안녕하세요. 박기린 입니다.
자바스크립트의 Array 내장 메소드 중, Array의 elements를 탐색하는 내장메소드인 includes, some, every에 대해 알아보겠습니다.
Array.prototype.includes()
const movements = [200, 450, -400, 3000, -650, -130, 70, 1300];
console.log(movements.includes(-130)); // true
Array이름.includes( 찾고자 하는 value, <선택> Number : 몇 번째 순서의 elemets 부터 찾을지 )
첫 번째는 includes() 입니다.
includes()가 첫 번째 인수로 받은 값을, includes() 메소드가 적용된 Array의 각 element 마다 Strict 비교(===)를 진행합니다.
동일한 값이 존재하면 true, 아니면 false를 반환합니다.
Array.prototype.some()
const movements = [200, 450, -400, 3000, -650, -130, 70, 1300];
const anyDeposits = movements.some(mov => mov > 1500);
console.log(anyDeposits); // true
Array이름.some( 콜백함수, 콜백함수에 this 키워드가 필요할 경우에 this로 설정해줄 값 )
some에 들어가는 콜백함수
(element, index, arr) => {
{... true/false를 반환하는 식 ...}
}
element : 현재 호출한 Array element의 값
index : 현재 호출한 Array element의 인덱스
arr : some이 적용된 Array 원본
두 번째는 some() 입니다. some() 인수로 넘겨진 콜백함수에는 true/false를 반환하는 조건식이 있습니다.
Array의 element 중, some()의 콜백함수 조건식을 통과했을 때 true를 return하는 경우가 '단 한 번'이라도 있으면, true를 반환합니다.
Array.prototype.every()
every()는 some()과 반대됩니다.
const movements = [200, 450, -400, 3000, -650, -130, 70, 1300];
console.log(movements.every(mov => mov > 0)); // false
const movements2 = [200, 450, 3000, 70, 1300];
console.log(movements2.every(mov => mov > 0)); // true
Array이름.every( 콜백함수, 콜백함수에 this 키워드가 필요할 경우에 this로 설정해줄 값 )
every에 들어가는 콜백함수
(element, index, arr) => {
{... true/false를 반환하는 식 ...}
}
element : 현재 호출한 Array element의 값
index : 현재 호출한 Array element의 인덱스
arr : some이 적용된 Array 원본
세 번째는 every() 입니다. 두 번째로 살펴봤던 some()과 구성이 동일합니다.
차이점은, every()는 Array의 모든 elements에서 콜백함수의 조건식이 true를 반환할 때만, 최종적으로 true를 반환한다는 점입니다.
반응형
'JS > JavaScript 강의' 카테고리의 다른 글
[JS] 55. Number 타입의 부가적인 내용 (conversion, parsing, checking) (0) | 2022.12.22 |
---|---|
54. sorting Arrays (0) | 2022.12.21 |
52. reduce Method (0) | 2022.12.16 |
51. filter Method (0) | 2022.12.15 |
50. map Method (2) | 2022.12.14 |