0

使った

console.log(response);

コンソールで次のようになりました(Firebugで)。「LMNOPQ」が存在するかどうかをループして確認するにはどうすればよいですか?

data        [Object { name="Excel in ABCD", category="Book", id="327361517327399", more...}, Object { name="LMNOPQ", category="Product/service", id="175625882542984", more...}, Object { name="UVWXYZ", category="Book", id="260641707360118", more...}, 7 more...]
            0       Object { name="Excel in ABCD", category="Book", id="327361517327399", more...}
            category        "Book"
            created_time        "2012-04-04T05:31:04+0000"
            id      "327361517327399"
            name        "Excel in ABCD"
            1       Object { name="LMNOPQ", category="Product/service", id="175625882542984", more...}
            2       
Object { name="UVWXYZ", category="Book", id="260641707360118", more...}

次に、Baptiste Pernet の提案に従って、次のことを試しました。

for(var i in response) {
    console.log(response[i].name);//gives me undefined
    console.log(response[i]);//gives me another object (it is nested, check below)
}

[Object { name="Excel in ABCD", category="Book", id="327361517327399", more...}, Object { name="LMNOPQ", category="製品/サービス", id="175625882542984" , もっと...}, オブジェクト { name="UVWXYZ", カテゴリ="本", id="260641707360118", もっと...},

どうすればこの名前を取得できますか? 私は立ち往生しています:

console.log(response[i]);

ネストされたオブジェクトのプロパティを取得するには、何を記述すればよいですか? 別のループ?

4

2 に答える 2

2

結果を視覚化するには、このサイトJSON.stringify(response)を使用してみてください。これは、提供する形式よりもはるかに標準的です。

あなたが与えたものから、あなたは配列を含むという名前のメンバーを持っているようですdata(繰り返しますが、あなたはあなたにjavascriptオブジェクトを記述するための良いフォーマットを提供しなかったのでわかりません)。

だからやってみましょう

for(var i in response.data) {
  if (response.data[i].name == 'LMOPQ') {
    return true
  }
}

return false;
于 2012-04-05T07:38:47.053 に答える
-1

あなたが使用することができます

for (var prop in Object) {
    if(prop == "LMNOPQ") {
        // Do something
    }
}

または代わりに使用できますif( response[like].hasOwnProperty("LMNOPQ") )

于 2012-04-05T07:41:04.287 に答える