我有这个数组:
var arr = [];
arr.push({name:"k1", value:"abc"});
arr.push({name:"k2", value:"hi"});
arr.push({name:"k3", value:"oa"});
是否可以通过知道名称来获取值或特定元素?
类似这样的:
arr['k2'].value
或
arr.get('k1')
最佳答案
我知道这个问题很老了,但还没有人提到原生解决方案。如果您不想支持过时的浏览器(此时您不应该支持),您可以使用 array.filter
:
var arr = [];
arr.push({name:"k1", value:"abc"});
arr.push({name:"k2", value:"hi"});
arr.push({name:"k3", value:"oa"});
var found = arr.filter(function(item) { return item.name === 'k1'; });
console.log('found', found[0]);
Check the console.
你可以看到一个 list of supported browsers here 。
在 ES6 的 future ,你将能够使用 array.find 。
https://stackoverflow.com/questions/7075485/
相关文章:
javascript - 是否有任何将 json 转换为 url 参数的 native 函数?
java - 在 Spring Boot 中返回 JSON 对象作为响应
json - Postgres JSON 数据类型 Rails 查询
java - 如何解析嵌套 JSON 结果中的动态 JSON 键?
javascript - 如何使用 JSON 数据填充选择框的选项?
java - jackson JSON : get node name from json-tree
java - 如何在 Java 中将 List 转换为 Json