【发布时间】:2012-04-10 07:23:05
【问题描述】:
【问题讨论】:
标签: javascript json
【问题讨论】:
标签: javascript json
var string = '[{"title":"Title1"},{"title":"Title2"}]';
var array = JSON.parse(string);
array.forEach(function(object) {
console.log(object.title);
});
注意JSON.parse isn't available in all browsers; use JSON 3 必要时。
当然,ES5 Array#forEach 也是如此。这只是一个例子。
如果您使用 jQuery,则可以使用 $.each 来迭代数组。 jQuery 也有一个jQuery.parseJSON 方法。
【讨论】:
如果您使用的是 jQuery,请执行以下操作:
var myArray = jQuery.parseJSON('[{"title":"Title1"},{"title":"Title2"}]');
【讨论】:
如果它直接在你的 JS 中,那么它开箱即用:
var obj = [{"title":"Title1"},{"title":"Title2"}];
alert(obj[0].title); // "Title1";
如果是通过 AJAX 接收的:
// obj contains the data
if( typeof JSON != "undefined") obj = JSON.parse(obj);
else obj = eval("("+obj+")");
【讨论】:
也许使用 for 循环? :o
for(var i = 0; i < jsonVar.length; i++) {
alert(jsonVar[i].title);
}
【讨论】:
使用JSON.parse()。
并非所有浏览器都支持该方法,因此您可以使用 Douglas Crockford 的 polyfill。 这里:https://github.com/douglascrockford/JSON-js
编辑: 这是它的浏览器支持统计信息: http://www.caniuse.com/#search=JSON
【讨论】:
使用JSON.parse(json2.js 将为旧浏览器提供一个版本)。
【讨论】:
json2.js。
这是一个使用 jQuery 的示例:
var jsonObj = $.parseJSON('[{"title": "Title1"}, {"title": "Title2"}]');
var title1 = jsonObj[0].title; //Title1
var title2 = jsonObj[1].title; //Title1
您可以在此处查看演示:http://jsfiddle.net/pBb4j/
【讨论】: