如何获取 JSON 数组下存在的相应值
How to fetch corresponding value present under JSON Array
>我有一个如下所示的JSON
。[
{
"vendor_id": "5000819028",
"vendor_name": "Test 01"
},
{
"vendor_id": "5000823900",
"vendor_name": "Test 03"
}
]
我有vendor_name,例如测试 03
如何获取相应的vendor_id。
我已经这样做了,它工作正常
var json = [
{
"vendor_id": "5000819028",
"vendor_name": "Test 01"
},
{
"vendor_id": "5000823900",
"vendor_name": "Test 03"
}
];
var vendorname = 'Test 03';
var result = '';
for(var i=0;i<json.length;i++)
{
if(json[i].vendor_name===vendorname)
{
result = json[i].vendor_id ;
}
}
alert(result);
http://jsfiddle.net/10nh59f4/3/
但是还有其他更好的方法吗?
你可以
用一个稍微整洁的方法:
var result = null;
var vendername = 'Test 03';
json.some(function(item) {
if ( item.vendor_name == vendername ) {
result = item;
return true;
}
});
或使用下划线/下划线:
var result = _.find(json, function(item) {
return item.vender_name == vendername;
});
您也可以使用 filter
但这不会停止,直到处理完所有项目:
var results = json.filter(function(item) {
return item.vender_name == vendername;
});
// results is an Array, to get the first item use [0]:
var result = results[0];
相关文章:
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 用于检查数组中是否存在元素的javascript自定义方法
- 验证会话中是否存在对象's数组
- 检查数组中是否存在字符串值,并返回找到的数组值js
- underline-js:将键对象与数组键对象进行比较,如果存在,则移除现有的添加新的
- 查找数组's按属性不存在于另一个数组中的对象
- 为什么没有从数组中存在的对象中删除属性
- 在对象上迭代以验证它是否's键存在于数组中
- 使用JQuery检查数组的索引中是否存在字符串
- JavaScript对象中存在数组的问题
- 使用javascript/jquery从现有数组中创建一个新数组,该数组保存项目存在的次数
- undercore返回数组中对象的indes,其中单词存在于对象中的句子中
- 如何使用函数来确定 Javascript 数组中是否存在值
- 检查数组中是否存在数组
- Javascript 速记方法,如果存在数组元素,则为变量分配真/假
- 如何在jquery中检查json中是否存在数组
- 如何检查多维数组中是否存在数组键
- 如何在json数据中检查任何列值使用angular js是否存在数组/集合
- 检查参数中是否存在数组
- 如果存在数组的元素,则从 mongodb 集合中检索项目(meteor js)