javascript - JS のオブジェクトに関する質問
漂亮男人
漂亮男人 2017-05-18 10:51:26
0
5
417

今日、JS オブジェクトについて説明している本を見ましたが、よく理解できない例がありました

リーリー
漂亮男人
漂亮男人

全員に返信(5)
Ty80


ここでの [object Object] は、このステップ myObject[myObject] = "foo"; の myObject の暗黙的な型変換によって取得されるため、ここでの [object Object] は単なる変換された文字列ですが、オブジェクト内では '[object Object]' として扱われます。値「foo」をキーとして保存します。

いいねを押す +0
Ty80

リーリー

いいねを押す +0
世界只因有你

リーリー

いいねを押す +0
左手右手慢动作

これはオブジェクトキー名の暗黙的な変換の問題です。
次の例を現地語で説明してみましょう:

A オブジェクトがあり、B オブジェクトを A オブジェクトのキー名として渡したいのですが、オブジェクトのキー名はすべて文字列であるため、B オブジェクトは toString() メソッドを呼び出して変換します。文字列 "[ object Object]" に変換して、A オブジェクトのキー名としてデータを格納します。インスタンス内のデータは、この "foo" 文字列です。


特別な注意が必要なもう 1 つの点は次のとおりです。
ご質問の A オブジェクトと B オブジェクトは同じであり、非常に混乱を招くため、それらを区別するために新しい mykey を宣言しました。

リーリー

出力結果は true です。これは、「[object Object]」が {} と等しくないが、toString() メソッドを渡した後にオブジェクトによって返された文字列と等しいことを証明します


リーリー

上記の 3 行のコードは、「[object Object]」が toString() メソッドを渡した後にオブジェクトによって返される文字列と等しいことを再度証明します

いいねを押す +0
大家讲道理

キー値は自動的に文字列に変換されます

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!