js怎么查询数组中是否包含某个元素?

js怎么查询数组中是否包含某个元素?除了使用for循环对比,还有哪些方式可以查找数组中是否包含某一元素?

function contains(a, obj) {
    for (var i = 0; i < a.length; i++) {
        if (a[i] === obj) {
            return true;
        }
    }
    return false;
}
jsarraycontains
1
168
已修改
小课
小课2022-05-31 21:09
1 个回答

Array.indexOfArray.includes都可以查询某一个元素是否在数组中,现在的浏览器基本上都支持Array.includes,除了IE,如果需要兼容IE,就只能使用Array.indexOf。

['joe', 'jane', 'mary'].includes('jane')
['joe', 'jane', 'mary'].indexOf('jane') >= 0

如果需要根据元素的某些属性进行判断,可以使用Array.some

const items = [ {a: '1'}, {a: '2'}, {a: '3'} ]
items.some(item => item.a === '3')
1
已修改
小课
小课2022-05-31 21:17
你的回答

内容