私はJavascriptを初めて使い、オブジェクトに格納されているテキストを抽出しようとしています。オブジェクトリテラルを処理する方法は?
オブジェクトはオブジェクトリテラルとして定義され、関数を呼び出すJavascript script内の関数に渡されます。スクリプト(オブジェクト)は、この構造を持っている:
function foo(o){
var out = document.getElementById('container');
out.innerHTML = o.query.count;
}
私の問題:オブジェクトは「foo」という名前のコールバック関数に渡され
foo({
"query": {
"count": "2",
"created": "2009-07-25T08:17:54Z",
"lang": "en-US",
},
"results": {
"result": [
{
"abstract": "<b>Pizza</b> Hut®. Order Online for Delivery or Carry-out. Fast & Easy.",
"title": "<b>Pizza</b> Hut"
},
{
"abstract": "Official site of Domino's <b>Pizza</b> delivery chain, which offers thin crust, deep dish, and hand tossed <b>pizzas</b> with a variety of side items and beverages. Site <b>...</b>",
"title": "Domino's <b>Pizza</b>"
}
]
}
}
});
私はプリントアウトする方法を知っています上記のコールバック関数を使用してクエリの変数をカウントしていますが、結果配列の最初の結果のタイトルをどのように出力するかわかりません。
最初の結果タイトルを表示するためにコールバック関数を変更するにはどうすればよいですか? また、すべての結果からすべてのタイトルを印刷できるforeachステートメントがありますか?
ありがとうございます!
UPDATE:このコードのJSBINがである:最初の結果のタイトルを取得するために
o.results.result[0].title
質問が間違っている - あなたはJSONをパースしていない、あなたは、JavaScriptの変数 – zakovyrya
@クリス化合物と連携:あなたのコードにタイプミスがあります - あなたはあなたのコールの終了時に余分な閉じ括弧を持っています'foo()'に渡します。 – RichieHindle
@リーチ:ありがとうございました。 – chris