JavaScript

Javascript 배열 some, every, find (Array element check or Confirm)

ITSkeleton 2020. 6. 20. 21:10
728x90
반응형

배열 요소중에 어떠한 값이 들어있는지 확인해야 할 경우가 있습니다.

이때를 위해  Array객체에서 메소드를 제공해주는데요

한번 알아볼까요?

 

1. some

some 메소드는 배열안의 모든 요소를 검사하는 것이 아니라

순차적으로 검색하며 맞는 요소가 나타나게 되면 거기서 멈춰버립니다. 참고하여 주세요.

const test = [
 { name: 'a', value: 0 },
 { name: 'b', value: 1 },
 { name: 'c', value: 2 },
 { name: 'd', value: 3 },
 { name: 'e', value: 4 },
];

console.log(test.some(e => e.name === 'c'));
// true ('c'가 name에 존재합니다)
console.log(test.some(e => e.name === 'f'));
// false ('f'가 name에 존재하지 않습니다)

2. every

every 메소드는 배열안의 모든 요소가 조건에 만족하는지 확인합니다.

이 또한 순차적으로 검색하며 조건에 하나라도 안맞는 요소가 있을경우 false를 반환합니다.

const test = [
 { name: 'a', value: 0 },
 { name: 'b', value: 1 },
 { name: 'c', value: 2 },
 { name: 'd', value: 3 },
 { name: 'e', value: 4 },
];

console.log(test.every(e => e.name === 'c'));
// false ('c'가 포함되어있지만 첫번째 요소에서부터 c가 아니기 때문에 false가 반환됩니다)
console.log(test.every(e => e.value < 5));
// true (모든 value의 값이 5보다 작기 때문에 true가 반환됩니다)

3. find

find 메소드는 배열안의 요소중 조건에 맞는 첫번째 요소를 반한해 줍니다.

const test = [
 { name: 'a', value: 0 },
 { name: 'b', value: 1 },
 { name: 'c', value: 2 },
 { name: 'd', value: 3 },
 { name: 'e', value: 4 },
];

console.log(test.find(e => e.name === 'c'));
// { name: 'c', value 2 }

위와 같이 find는 검색된 첫번째 요소를 반환합니다.

728x90
반응형