-
자바스크립트 고차함수 - every(), some()프론트엔드/JavaScript 2020. 10. 6. 11:53
every와 some 메서드를 사용하면 배열 안에 특정 조건을 만족하는 요소가 있는지 판별할 수 있다.
some 메서드
some 메서드는 배열 안의 요소 중 some이 파라미터로 받은 콜백함수의 조건에 맞는 요소가
단 한 개라도 있으면 true를 반환한다.
<body> <script> let num = [2,4,6,8,10]; let some = num.some(function(item){ // some은 아예 해당안되면 false return item > 10; }); console.log(some); // false 출력 </script> </body>
<body> <script> let num = [2,4,6,8,10]; let some = num.some(function(item){ // some은 일부만 해당되도 true return item >= 10; }); console.log(some); // true 출력 </script> </body>
이때 some 메서드로 호출한 콜백함수는 some 메서드를 호출한
배열 요소, 배열의 인덱스, 배열 그 자체를 파라미터로 받아올 수 있다.
<body> <script let num = [2,4,6,8,10]; let some = num.some(function(item, index, array){ console.log("요소:"+item+" 인덱스:"+index+" 배열:"+array); return item > 10; }); // 요소:2 인덱스:0 배열:2,4,6,8,10 // 요소:4 인덱스:1 배열:2,4,6,8,10 // 요소:6 인덱스:2 배열:2,4,6,8,10 // 요소:8 인덱스:3 배열:2,4,6,8,10 // 요소:10 인덱스:4 배열:2,4,6,8,10 </script> </body>
every 메서드
every 메서드는 배열 안의 모든 요소가 every가 파라미터로 받은 콜백함수의 조건에
모두 해당되야 true를 반환한다.
<body> <script> let num = [2,4,6,8,10]; let every = num.every(function(item){ // every는 일부만 해당되면 false return item > 2; }) console.log(every); // false 출력 </script> </body>
<body> <script> let num = [2,4,6,8,10]; let every = num.every(function(item){ // every는 모두가 해당되어야 true return item >= 2; }) console.log(every); // true 출력 </script> </body>
이때 every 메서드로 호출한 콜백함수는 some 메서드를 호출한
배열 요소, 배열의 인덱스, 배열 그 자체를 파라미터로 받아올 수 있다.
<body> <script> let num = [2,4,6,8,10]; let every = num.every(function(item, index, array){ console.log("요소:"+item+" 인덱스:"+index+" 배열:"+array); return item >= 2; }) // 요소:2 인덱스:0 배열:2,4,6,8,10 // 요소:4 인덱스:1 배열:2,4,6,8,10 // 요소:6 인덱스:2 배열:2,4,6,8,10 // 요소:8 인덱스:3 배열:2,4,6,8,10 // 요소:10 인덱스:4 배열:2,4,6,8,10 </script> </body>
'프론트엔드 > JavaScript' 카테고리의 다른 글
자바스크립트 - 이벤트 (0) 2020.10.19 자바스크립트 고차함수 - find(), findindex() (0) 2020.10.06 자바스크립트 고차함수 - reduce() (0) 2020.10.03 자바스크립트 고차함수 - filter() (0) 2020.10.03 자바스크립트 고차함수 - Map() (0) 2020.10.03