今日では、次のようなコードを書くことは一般的です
const hasOwnProperty = Object.prototype.hasOwnProperty;
if (hasOwnProperty.call(object, 'foo')) {
// `object` has property `foo`.
}
または、Object.prototype.hasOwnProperty
の簡単なバージョンを公開するライブラリを、has や lodash.has などの形で使用します。
Object.hasOwn
で提案されていること では、単純に次のように書けます:
if (Object.hasOwn(object, 'foo')) {
// `object` has property `foo`.
}
Object.hasOwn
はすでに V8 v9.3 で利用でき、それは --harmony-object-has-own
フラグの後ろで、まもなく Chrome で公開される予定です
Object.hasOwn
サポート #
- Chrome: サポート
- Firefox: サポート
- Safari: サポート
- Node.js: サポートなし
- Babel: サポート