forEach 루프 중 배열 요소 수정
JavaScript에서 forEach 메서드를 사용하여 배열을 반복할 때 다음과 같은 사실을 깨닫는 것이 실망스러울 수 있습니다. 루프 내의 개별 요소에 대한 변경 사항은 원래 배열에 반영되지 않습니다. 이는 forEach가 실제 요소에 대한 참조가 아닌 요소의 복사본을 콜백 함수에 전달하기 때문입니다.
반복 함수에서 배열 요소에 대한 쓰기 액세스를 활성화하려면 다음 두 가지 옵션이 있습니다.
옵션 1: 배열을 세 번째 인수로 제공
forEach 메서드는 배열 자체를 나타내는 선택적 세 번째 인수를 사용합니다. 콜백 내 배열의 해당 인덱스에 새 값을 할당하면 원래 배열이 수정됩니다.
arr.forEach(function(part, index, theArray) { theArray[index] = "hello world"; });
옵션 2: Bound This와 함께 화살표 함수 사용
원하는 동작을 달성하는 또 다른 방법은 화살표 함수를 콜백으로 사용하고 배열을 this 컨텍스트로 제공하는 것입니다.
arr.forEach(function(part, index) { this[index] = "hello world"; }, arr); // use arr as this
콜백에서 배열을 다음과 같이 설정하여 수정 요소에 만들어진 요소는 원래 배열에 직접 적용됩니다.
추가 고려 사항:
위 내용은 JavaScript `forEach` 루프 내에서 배열 요소를 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!