안녕하세요.
디자인도 하고, 개발도 하는 '디발자 뚝딱'입니다.
이번 포스팅에서는 자바스크립트의 배열 메소드에 대해 알아보겠습니다.
배열 메소드 중에서도 some과 every에 대해 알아볼 건데요.
하나하나 차근차근 알아볼까요?
처음엔 some과 every의 공통점을 알아볼게요.
그 다음 각각의 특징을 알아보고, 예제를 보며 배열 메소드를 이해해봅시다.
아참, 코드 마지막에 '// 결과'로 적혀 있는 내용은 콘솔창에 보여지는 내용이니 참고해 주세요 :)
some과 every 공통점
- true 혹은 false 값만 리턴.
- 메소드를 호출하는 배열이 빈 배열이면 callback 함수를 실행하지 않고, some은 false / every는 true를 리턴.
some 특징
- 배열 안에 콜백함수가 리턴하는 조건을 만족하는 요소가 1개 이상 있는지를 확인하는 메소드.
- 배열을 반복하면서 모든 요소가 콜백함수가 리턴하는 조건을 만족하지 않는다면 false.
콜백함수가 리턴한느 조건을 만족하는 요소가 하나라도 등장한다면 바로 true를 리턴하고 반복을 종료합니다. - 일부분이라도 조건을 만족하는 요소가 있는지 확인합니다.
const numbers = [1, 3, 5, 7, 9];
// some: 조건을 만족하는 요소가 1개 이상 있는지
const someReturn = numbers.some((element, index, array) => {
console.log(index); // 콘솔에는 0, 1, 2, 3까지만 출력됨.
return element > 5;
});
console.log(someReturn); // true;
every 특징
- 모든 요소가 조건에 만족하는지 확인하는 메소드.
- 즉, 조건을 만족하지 않는 요소가 1개 이상 있는지 확인하는 메소드.
- 모든 요소가 콜백함수가 리턴하는 조건을 만족한다면 true,
조건을 만족하지 않는 요소가 등장한다면 false를 리턴하고 반복을 종료한다.
예제 1)
const numbers = [1, 3, 5, 7, 9];
const someReturn = numbers.some((el) => el > 5);
const everyReturn = numbers.every((el) => el > 5);
console.log('some:', someReturn);
console.log('every:', everyReturn);
// 결과
// some: true
// every : false
예제 2)
const numbers = [1, 3, 5, 7, 9];
const someReturn = numbers.some((el, i) => {
console.log('some:', i);
return el > 5;
});
const everyReturn = numbers.every((el, i) => {
console.log('every:', i);
return el > 5;
});
console.log('some:', someRetrun);
console.log('every:', everyReturn);
// 결과
// some: 0
// some: 1
// some: 2
// some: 3
// every : 0
// some: true
// every: false
728x90
'코딩도 합니다 > JS' 카테고리의 다른 글
[자바스크립트 js] 배열 메소드 / reduce (0) | 2021.06.16 |
---|---|
[자바스크립트 js] AJAX / JSON / Object to JSON / JSON to Object (0) | 2021.06.15 |
[자바스크립트 js] 배열 메소드 / filter / find (0) | 2021.06.14 |
[자바스크립트 js] 배열 메소드 forEach / map (0) | 2021.06.11 |
[자바스크립트 js] 프로퍼티 표기법 (0) | 2021.06.10 |