【发布时间】:2009-07-25 20:25:58
【问题描述】:
我是 Javascript 新手,正在尝试提取存储在对象中的一些文本。
对象被定义为对象字面量,并被传递给调用该函数的Javascript script 中的函数。脚本(和对象)具有以下结构:
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>"
}
]
}
}
});
对象被传递给名为“foo”的回调函数:
function foo(o){
var out = document.getElementById('container');
out.innerHTML = o.query.count;
}
我的问题:我知道如何使用上面的回调函数打印出查询计数变量,但我不知道如何打印出结果数组中第一个结果的标题.
如何更改回调函数以显示第一个结果标题? 另外,是否有一个 foreach 语句,我可以在其中打印出所有结果中的所有标题?
谢谢!
更新:此代码的 JSBIN 位于:http://jsbin.com/ejiwa/edit
【问题讨论】:
-
问题是错误的 - 你不解析 JSON,你使用复合 JavaScript 变量
-
@chris:您的代码中有一个错字 - 在您对
foo()的调用结束时,您有一个额外的右括号。 -
@Richie:谢谢我没注意到
标签: javascript json yql