オブジェクトが特定のキーを持っているかどうかをチェックする最も防弾方法がある:これは、一定の保証を提供してObject.prototype.hasOwnProperty.call(obj、key)を実行する代わりにES6 +の代替手段がありますか?
Object.prototype.hasOwnProperty.call(obj, key)
:key
はobj
の直接財産である場合にのみtrue
に評価し、それが動作しますobj
のプロトタイプが通常Object
でなくても(たとえば、const obj = Object.create(null)
で作成された場合など)
しかし、それは一口です。
ES6以降(polyfillableまたはBabelでコンパイル可能な 'プロポーザル'を含む)の新しい構文/メソッドがありますが、これは同じ保証を提供しますが、よりわかりやすく読みやすい方法ですか?
変数でエイリアスするだけではどうですか?つまり、 'const iHaz = Object.prototype.hasOwnProperty'のように使用します。' const iDoHaz = iHaz.call(obj、key) 'のように使用します。 – Joseph
これを使用する必要はほとんどないので、何が問題なのですか? – Bergi
あなたのお母さんはあなたの口にコードを入れないよう教えてくれませんでしたか? ;)。 –