TypedArray.prototype.forEach()
forEach()
메서드는 주어진 함수을 형식화 배열에 있는 각 요소에 대해 한 번씩 실행합니다.
이 메서드는 Array.prototype.forEach()
와 동일한 알고리즘으로 동작합니다.
형식화 배열은 형식화 배열 타입 중 하나입니다.
시도해보기
구문
js
// Arrow function
forEach((element) => { /* ... */ } )
forEach((element, index) => { /* ... */ } )
forEach((element, index, array) => { /* ... */ } )
// Callback function
forEach(callbackFn)
forEach(callbackFn, thisArg)
// Inline callback function
forEach(function(element) { /* ... */ })
forEach(function(element, index) { /* ... */ })
forEach(function(element, index, array){ /* ... */ })
forEach(function(element, index, array) { /* ... */ }, thisArg)
매개변수
callbackFn
-
각 요소에 대해 실행할 함수.
다음 세 가지 매개변수를 받습니다.
element
-
현재 처리할 현재 요소.
index
-
처리할 현재 요소의 인덱스.
array
-
forEach()
를 호출한 배열.
thisArg
Optional-
callbackFn
을 실행할 때this
로 사용할 값.
반환 값
설명
forEach()
는 주어진 callbackFn
을 형식화 배열에 있는 각 요소에 대해 한 번씩 실행합니다.
삭제했거나 초기화하지 않은 인덱스에 대해서는 실행하지 않습니다. 그러나 undefined
값을 가진, 존재하는
요소에 대해서는 실행합니다.
callbackFn
은 다음 세 인수와 함께 호출됩니다.
- 요소 값
- 요소 인덱스
- 순회 중인 배열
thisArg
매개변수를 forEach()
에 제공한 경우 callbackFn
을 호출할 때 전달해 this
의 값으로 쓰입니다. 전달하지 않으면 undefined
를 this
값으로 사용합니다. callbackFn
이 최종적으로 관찰할 수 있는 this
값은 함수의 this
를 결정하는 일반적인 규칙에 따라 결정됩니다.
forEach()
로 처리할 요소의 범위는 최초 callbackFn
호출 전에 설정됩니다. forEach()
호출을 시작한 뒤
배열에 추가한 요소는 callbackFn
이 방문하지 않습니다. 형식화 배열의 기존 요소값이 바뀐 경우,
callbackFn
에 전달하는 값은 forEach()
가 요소를 방문한 시점의 값을 사용합니다.
방문하기 전에 삭제한 요소는 방문하지 않습니다.
forEach()
는 각 형식화 배열 요소에 대해 한 번씩 callbackFn
함수를 실행합니다.
every()
과
some()
와는
달리 undefined
를 반환합니다.
예제
형식화 배열의 컨텐츠 기록하기
아래 코드는 형식화 배열의 각 요소당 한 줄의 로그를 남깁니다.
js
function logArrayElements(element, index, array) {
console.log(`a[${index}] = ${element}`);
}
new Uint8Array([0, 1, 2, 3]).forEach(logArrayElements);
// Logs:
// a[0] = 0
// a[1] = 1
// a[2] = 2
// a[3] = 3
명세서
Specification |
---|
ECMAScript Language Specification # sec-%typedarray%.prototype.foreach |
브라우저 호환성
BCD tables only load in the browser