使用 javascript 从 JSON 获取特定值
Posted
技术标签:
【中文标题】使用 javascript 从 JSON 获取特定值【英文标题】:Getting specific value from JSON using javascript 【发布时间】:2013-08-20 19:54:10 【问题描述】:我正在使用 ajax 从服务器返回一小组数据,该数据返回 JSON 数据,格式如下:
"data": [
"id": "1",
"value": "One"
,
"id": "2",
"value": "Two"
,
"id": "3",
"value": "Three"
]
在客户端,它被分配给一个名为response
的变量。我使用response.data
来获取内容。
问题是,有没有一种更简单的方法可以在不进行循环的情况下获取值?
我正在寻找类似response[id==2].value
的东西,它应该给我“两个”。
如果这不可能,我愿意接受任何建议。
【问题讨论】:
重复? ***.com/questions/8481380/… 我理解你的问题,但在你的情况下可以这样做..response.data[2-1].value
http://jsfiddle.net/uHbZt/8/这个?
【参考方案1】:
如果您使用 jQuery 的 json parse method 之类的东西将其解析为 javascript 对象,您可以像普通的 javascript 数组一样引用数组中的各种项目。
这样做:
var dataArray = $.parseJSON(myJson).data;
var theFirstData = dataArray[0]; //get the data with id "1"
或者,如果你不想使用 jQuery,你可以使用JSON.parse(jsonToParse)
。 Here're the docs for that method.
【讨论】:
【参考方案2】:您可以采用函数式方法并使用Array.filter 方法:
var matchingResults = JSON['data'].filter(function(x) return x.id == 2; );
// procede to use matching elements...
【讨论】:
一点也不!你让我的回答更适合我。 这正是我所需要的。谢谢! 这个解决方案让我的生活更美好。谢谢!以上是关于使用 javascript 从 JSON 获取特定值的主要内容,如果未能解决你的问题,请参考以下文章
Javascript:在gulpfile.js中获取package.json数据
使用 unmarshal 从响应中获取特定的 JSON 字段
JavaScript - 有没有一种简单的方法来获取嵌套 JSON 中每次出现的特定键的值
C# 使用 HttpClient 从 JSON 响应中获取特定对象