>웹 프론트엔드 >JS 튜토리얼 >js 반복자 방법 정보

js 반복자 방법 정보

小云云
小云云원래의
2017-12-06 15:03:102095검색

반복자는 표준 템플릿 라이브러리 컨테이너의 일부 또는 모든 요소를 ​​탐색하는 데 사용할 수 있는 객체입니다. 각 반복기 객체는 컨테이너의 특정 주소를 나타냅니다. js 배열에는 두 가지 유형의 반복자 메서드가 있습니다. 하나는 새 배열을 생성하지 않고 다른 하나는 새 배열을 생성합니다.

첫 번째 방법: 새 배열을 생성하지 않고 대신 배열의 각 요소에 대해 일부 작업을 수행하거나 값을 반환합니다.

1. 함수를 매개변수로 받아 배열의 각 요소에 해당 함수를 사용하는 forEach() 메서드.

<script>
 function arr(num){console.log(num+1)};
 var array = [1,2,3,4,5,6];
 array.forEach(arr);
</script>

2.every() 및 some() 두 메서드 모두 반환 값이 부울 유형인 함수를 허용하고 배열의 각 요소에 이 함수를 사용합니다. Every() 메서드는 함수가 모든 요소에 대해 true를 반환하는 경우 true를 반환합니다. some() 메서드는 한 요소가 이 함수를 사용하여 true를 반환하는 한 true를 반환합니다.


<script>
 var  arr = [1,3,4,5,6,7,8];
function even(num){return num%2 ==0};
var sum = arr.every(even);
var  nums = arr.some(even);
console.log(sum)//false;
console.log(nums)//true;
</script>

3. Reduce() 메서드는 함수를 받아들이고 값을 반환합니다. 이 메서드는 누적된 값으로 시작하여 배열의 마지막 요소까지 누적된 값과 배열의 후속 요소에 대해 함수를 계속 호출하고 마지막으로 누적된 값을 반환합니다. 문자열 배열 요소를 긴 문자열로 연결할 수도 있습니다


function add(total,num){return total+-*/num};
var arr =[1,2,3,4];
var sum = arr.reduce(add);

js도 ReduceRight() 메서드를 제공합니다. 차이점은 축소() 메서드와 순서가 오른쪽에서 왼쪽으로 정반대라는 것입니다. .
두 번째 방법 새 배열을 생성하는 Iterator 메서드

새 배열을 생성할 수 있는 두 가지 Iterator 메서드가 있습니다: map() 및 filter(). map()은 배열의 각 요소에 함수를 사용하는 forEach()와 약간 비슷합니다. 둘 사이의 차이점은 map()이 원래 요소에 함수를 적용한 결과인 새 배열을 반환한다는 것입니다.


   function add(num) {
        return num+=5;
    }
    var words =[1,2,3,4,5];
    var sum =words.map(add);
console.log(sum);//[6,7,8,9,10]

filter()는 반환 값이 부울 유형인 함수를 전달한다는 점에서 Every()와 유사합니다. Every()와의 차이점은 함수가 배열의 모든 요소에 적용될 때 결과는 다음과 같습니다. 가 true인 경우 이 메서드는 true를 반환하지 않지만 함수 적용 결과가 true인 요소가 포함된 새 배열을 반환합니다.


    function add(num) {
        return num%2 == 0;
    }
    var words =[1,2,3,4,5];
    var sum =words.filter(add);
console.log(sum);//[2,4];
<br/>

filter()를 사용하여 문자열 배열을 필터링할 수도 있습니다. 예를 들면 다음과 같습니다.


function add(str){if(str).indexOf("cie")>-1){return true;}return false;}
var words =["recieve","deceit","deceive"]
var miss = words.filter(add);
console.log(miss)//["recieve"]

위 내용은 js 반복자 방법에 관한 내용입니다. 모든 사람에게 도움이 되기를 바랍니다.

관련 권장 사항:

PHP 반복자를 사용하여 피보나치 수열 함수를 구현하는 방법에 대한 분석 예

php의 반복자는 무엇입니까

JavaScript 반복자 패턴을 구현하고 사용하는 방법에 대한 자세한 설명

위 내용은 js 반복자 방법 정보의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.