네이티브 JS마다 () 메소드를 달성

정의 및 사용

어레이의 모든 요소가 있는지 여부를 검출하기위한 각 () 메소드 (함수에 의해 제공되는) 특정 기준을 충족시킨다.

각 () 메소드는 검출기 어레이의 모든 요소의 특정 기능을 사용하여

  • 어레이는 검출 소자 만족하지 않은 경우, 그 전체의 발현 평가하여  거짓으로  하고, 나머지 요소는 검출되지 않을 것이다.
  • 모든 요소의 조건이 충족 될 경우, true를 돌려줍니다.

참고 :  모든 () 하늘의 배열 감지되지 않습니다.

참고 :  모든 ()는 원래의 배열을 변경하지 않습니다.

문법

array.every(function(currentValue,index,arr), thisValue)

매개 변수 설명

매개 변수 기술
함수 (CurrentValue에, 인덱스 도착) 해야합니다. 기능, 어레이의 각 요소는이 기능을 수행 할
함수의 매개 변수 :
매개 변수 기술
CurrentValue에 해야합니다. 요소의 현재 값
인덱스 선택 사항. 요소의 현재 인덱스 값
도착 선택 사항. 현재 배열 오브젝트 요소가 속하는
thisValue 선택 사항. 콜백 오브젝트의 사용 예는 "이"의 값은 함수로 전달.
thisValue를 생략하면, "이"값 "미등록"

실현

// 实现every
Array.prototype.every = function(fn, value){
    if (typeof fn !== "function") {
        return false;
    }
    var arr = this;
    for (var i = 0; i < arr.length; i++) {
        var result = fn.call(value, arr[i], i, arr);
        if (!result) return false;
    }
    return true;
}

테스트

var arr = [2,23,4,2,4,2,2];
    console.log(arr.every(function(item, index, arr){
    return item >= 0;
}));

게시 된 167 개 원래 기사 · 원 찬양 197 · 전망 290 000 +

추천

출처blog.csdn.net/qq_17497931/article/details/104644261