-7

以下のコードと一緒にコメント内に質問を入れました。

    var box = {};

    box.content = box; // box{ 'content': {} }  right?



   show('content' in box); // true because content exist inside of the box object

   show('content' in box.content); // false because box.content contains an empty object! Right?
4

2 に答える 2

2

はい、あなたの主張はどちらも正しいです。実際には、2 番目のものも true を返す必要があります。

console.log('content' in box); // true
console.log('content' in box.content); // true

次の行で再帰を設定しているため、2 番目は true を返します。

box.content = box;

これはコンソールの結果です:

ここに画像の説明を入力

于 2013-03-26T16:58:19.463 に答える
0

「コンテンツ」プロパティにオブジェクトへの参照があるため、これは完全に再帰的に true を返す必要があります。

console.log(blah.content.content.content.content === blah) //shows 'true'
于 2013-03-26T17:03:59.663 に答える