3

我在下面有一个 JSON 字符串,它被存储为 JavaScript 中的 var。我正在尝试将字符串的片段解析为变量。

特别是,我需要地址、邮政编码、地区和地点。

这个 JSON 数组被存储为一个名为“data”的 JS var

有谁知道我如何开始解析这些东西?谢谢你们!

[{"address":"2801 Elliott Ave","category_ids":[347],"category_labels":[["Social","Food and 
Dining","Restaurants"]],"country":"us","email":"kimd@thedussingroup.com","factual_id":"43cfe23
8-ae8e-469a-8592-a1edc8603051","fax":"(206) 448-
9252","latitude":47.615154,"locality":"Seattle","longitude":-122.353724,"name":"The Old 
Spaghetti Factory","neighborhood":["Belltown","Downtown","Downtown 
Seattle"],"postcode":"98121","region":"WA","tel":"(206) 441-
7724","website":"http:\/\/www.osf.com"}]

感谢帮助!

4

3 回答 3

3

你 JSON 是一个数组(因为它包含在[and中]),所以你需要:

var data = JSON.parse('[{"addre....}]');
var address = data[0].address,
    postcode = data[0].postcode;

等等...

于 2013-10-22T07:18:40.540 回答
1
for(var i in data[0]){
    window[i] = data[0][i];
}

alert(address);
于 2013-10-22T07:19:12.167 回答
0

您可以使用JSON.parse

var data= your json;
JSON.parse(data);

更新: 在你的情况下,你甚至不需要解析你可以直接使用

console.log(data[0].address); //returns 2801 Elliott Ave 
console.log(data[0].category_ids); //returns [347] 

检查这个JSFiddle

于 2013-10-22T07:15:51.680 回答