在对象的JavaScript数组中查找属性
我有一个JavaScript数组,看起来像这样。数组包含不同类型的对象在对象的JavaScript数组中查找属性,javascript,jquery,underscore.js,lodash,Javascript,Jquery,Underscore.js,Lodash,我有一个JavaScript数组,看起来像这样。数组包含不同类型的对象 [ { "className": "XXXX", "targets": [ 0, 1, 2, 3, 4 ], "sClass": "lg" }, { "iDataSort": 0 },
[
{
"className": "XXXX",
"targets": [
0,
1,
2,
3,
4
],
"sClass": "lg"
},
{
"iDataSort": 0
},
{
"targets": [
9,
10
]
},
{
"targets": [
7,
8,
9,
10,
11,
12,
13,
14,
15
],
"visible": false,
"bVisible": false
}
]
我想在这个数组中搜索一个元素(对象),它包含两个名为targets
和visible
的属性,一旦找到这个对象,我想更新targets
属性的值
最有效的方法是什么?是否可以使用下划线或lodash进行此操作 在此上下文中,尝试使用$.each()
以及.hasOwnProperty(propertyName)
$.each(test, function (i, val) {
if (val.hasOwnProperty("visible") && val.hasOwnProperty("targets")) {
alert('yes..')
}
});
你想更新第一个这样的项目还是所有这样的项目?可能重复的@IngoBürk:只有第一个实例:)非常好的问题:)@SharpCoder然后你必须使用你接受的答案小心。仅从内部函数返回不会阻止更新所有此类项。