JavaScript에서 배열은 변경할 수 없습니다. 즉, 루프 반복 내에서 해당 요소를 직접 수정할 수 없습니다.
var arr = ["one", "two", "three"]; arr.forEach(function(part) { part = "four"; return "four"; }) alert(arr);
그러나 이 코드는 부분이 배열을 직접 수정하지 않는 콜백 함수 내의 지역 변수이기 때문에 여전히 ["one", "two", " three"]를 출력합니다.
반복 중에 배열 요소를 수정하려면 요소의 인덱스나 this 객체를 사용하여 요소에 액세스하세요.
// Using index arr.forEach(function(part, index, theArray) { theArray[index] = "hello world"; }); // Using 'this' arr.forEach(function(part, index) { this[index] = "hello world"; }, arr);
두 번째 예에서 arr은 콜백 함수의 this 값으로 지정됩니다. . 따라서 this[index]는 배열 요소를 나타냅니다.
forEach 대신에 보다 직접적인 방법으로 배열을 수정하는 다른 함수를 사용하는 것이 좋습니다.
이러한 함수는 반복 중에 요소를 직접 수정할 필요 없이 배열을 조작하기 위한 효율적인 메커니즘을 제공합니다.
위 내용은 반복 중에 JavaScript에서 배열 요소를 수정할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!