TypedArray.prototype.every()

every() 메서드는 배열 안의 모든 요소가 주어진 판별 함수를 통과하는지 테스트합니다. 이 메서드는 Array.prototype.every()와 같은 알고리즘을 가지고 있습니다. TypedArray은 형식화 배열 타입 중 하나입니다.

시도해보기

구문

js

// Arrow function
every((element) => { /* ... */ } )
every((element, index) => { /* ... */ } )
every((element, index, array) => { /* ... */ } )

// Callback function
every(callbackFn)
every(callbackFn, thisArg)

// Inline callback function
every(function(element) { /* ... */ })
every(function(element, index) { /* ... */ })
every(function(element, index, array){ /* ... */ })
every(function(element, index, array) { /* ... */ }, thisArg)

매개변수

callbackFn

각 요소를 시험할 함수.

다음 세 가지 인수를 받습니다.

element

배열에서 처리되는 현재 요소.

index

이 형식화 배열에서 처리할 현재 요소의 인덱스.

array

every를 호출한 형식화 배열.

thisArg Optional

callbackFn을 실행할 때 this로 사용하는 값.

반환 값

콜백 함수가 모든 배열 요소가 참 같은 값을 반환하면 true를 반환하며, 그렇지 않으면 false를 반환합니다.

설명

everycallbackFnfalsy을 반환하는 요소를 찾을 때까지 형식화 배열에 있는 각 요소에 대해 한 번씩 callbackFn 함수를 실행합니다. 해당하는 요소를 발견한 경우 every는 즉시 false를 반환합니다. 그렇지 않으면, 즉 모든 값에서 truthy을 반환하면 true를 반환합니다.

callbackFn은 요소의 값, 해당 요소의 인덱스 및 순회하고 있는 형식화 배열 세 가지 인수와 함께 호출됩니다.

thisArg 매개변수를 every에 제공한 경우 callbackFnthis로 사용됩니다. 그 외엔 undefined값을 사용합니다. 최종적으로 callbackFn이 볼 수 있는 this의 값은 함수의 this를 결정하는 일반적인 규칙을 따릅니다.

every는 호출한 배열을 변형하지 않습니다.

예제

형식화 배열의 모든 요소의 크기 테스트

다음 예는 형식화 배열의 모든 요소가 9보다 더 큰지 테스트합니다.

js

function isBigEnough(element, index, array) {
  return element >= 10;
}
new Uint8Array([12, 5, 8, 130, 44]).every(isBigEnough); // false
new Uint8Array([12, 54, 18, 130, 44]).every(isBigEnough); // true

화살표 함수를 사용한 형식화 배열 테스트

화살표 함수는 테스트 함수를 위해 더 짧은 구문을 제공합니다.

js

new Uint8Array([12, 5, 8, 130, 44]).every((elem) => elem >= 10); // false
new Uint8Array([12, 54, 18, 130, 44]).every((elem) => elem >= 10); // true

명세서

Specification
ECMAScript Language Specification
# sec-%typedarray%.prototype.every

브라우저 호환성

BCD tables only load in the browser

같이 보기