JS

find() 함수 대신 Set으로 배열에 해당 값이 존재 하는지 확인 방법

바삭바삭감튀 2024. 7. 5. 15:57

Set.has() 함수를 사용하면 된다.

 

find 함수는 반복문으로 작동하기 때문에 O(n) 시간 복잡도로 작동하고
Set.has() 함수 경우에는 O(1) 시간 복잡도로 작동하기 때문에 속도가 훨씬 빠르다


* 단 객체와 같은 복잡한 값은 불가능하고, 단순데이터  "String", "Number" 타입만 가능하다.
 

ex)

const s1 = "value1"
const s2 = "value2"
const s3 = "value3"

const mySet = new Set([obj1, obj2, obj3]);

mySet.has("value2") // true
mySet.has("value5") // false

 

728x90
반응형