javascript-objects - JavaScript Array find - 배열에 JavaScript의 값이 포함되어 있는지 어떻게 확인합니까?

JavaScript Array filter / javascript / arrays / algorithm / time-complexity

JavaScript 배열에 값이 포함되어 있는지 확인하는 가장 간결하고 효율적인 방법은 무엇입니까?

이것이 내가 아는 유일한 방법입니다.

function contains(a, obj) {
    for (var i = 0; i < a.length; i++) {
        if (a[i] === obj) {
            return true;
        }
    }
    return false;
}

Ry-



Answer #1

최상위 답변은 원시 유형을 가정하지만 배열에 특성 이있는 객체 가 포함되어 있는지 확인하려면 Array.prototype.some () 이 우아한 솔루션입니다.

const items = [ {a: '1'}, {a: '2'}, {a: '3'} ]

items.some(item => item.a === '3')  // true를 반환합니다.
items.some(item => item.a === '4')  // false 반환
if (items.some(item => item.a === '3')) {
  // 뭔가를
}