在对象的JavaScript数组中查找属性

Finding a property within a JavaScript array of object

本文关键字:查找 属性 数组 JavaScript 对象      更新时间:2023-09-26

我有一个JavaScript数组,它看起来像这样。数组包含不同类型的对象。

[
    {
        "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
    }
]

我想在这个数组中搜索一个元素(对象),它包含两个名为targetsvisible的属性,一旦找到这个对象,我想更新targets属性的值。

最有效的方法是什么?有可能使用underscorejs或lodash吗?

尝试在此上下文中使用$.each().hasOwnProperty(propertyName)

$.each(test, function (i, val) {
    if (val.hasOwnProperty("visible") && val.hasOwnProperty("targets")) {
        alert('yes..')
    }
});

演示