[解決済み] Object.create(null)でJSオブジェクトを作成するのは{}と同じですか?
2022-04-23 12:11:27
質問
私はJSオブジェクトを作成する方法をたくさん知っていますが、私は
Object.create(null)
の1つです。
質問です。
と全く同じなのでしょうか。
var p = {}
対
var p2 = Object.create(null);
?
解決方法は?
両者は等価ではありません。
{}.constructor.prototype == Object.prototype
一方
Object.create(null)
は何も継承しないので、全くプロパティを持ちません。
言い換えれば javascriptのオブジェクトは、明示的にnullをプロトタイプとして作成しない限り、デフォルトでObjectを継承しています。
Object.create(null)
.
{}
は、代わりに次のように等価になります。
Object.create(Object.prototype)
.
Chrome Devtoolでは、以下のように表示されます。
Object.create(null)
には
__proto__
プロパティを使用し、一方
{}
が行います。
関連
-
vue ディレクティブ v-html と v-text
-
[解決済み】最大呼び出しスタックサイズ超過エラー
-
[解決済み] JavaScriptでオブジェクトをディープクローンする最も効率的な方法は何ですか?
-
[解決済み] JavaScriptで現在のURLを取得する?
-
[解決済み] 私のJavaScriptコードは "No 'Access-Control-Allow-Origin' header is present on requested resource "というエラーを受け取りますが、Postmanはそうならないのはなぜですか?
-
[解決済み] HTML5のlocalStorageにオブジェクトを格納する方法は?
-
[解決済み] (a== 1 && a ==2 && a==3) が真に評価されることはあるのでしょうか?
-
[解決済み] JavaScriptの配列で一意な値をすべて取得する(重複を排除する)。
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み】オブジェクトの配列を文字列のプロパティ値でソートする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
vue3レスポンシブ対応のためのsetup+ref+reactive
-
jQueryのコピーオブジェクトの説明
-
Javascript Bootstrapのグリッドシステム、ナビゲーションバー、ローテーションの説明
-
vueディレクティブv-bindの使用と注意点
-
[解決済み】最大呼び出しスタックサイズ超過エラー
-
[解決済み】JavaScriptの配列でforEachが関数でない不具合
-
[解決済み】awaitは非同期関数でのみ有効です。
-
[解決済み】GETできない / Nodejsエラー
-
[解決済み】TypeError: Router.use() はミドルウェアの関数を要求しているが、Object を取得した。
-
[解決済み】ExpressJS : res.redirect()が期待通りに動かない?