배열의 인덱스 값을 변경하는 Array.prototype.with()가 ECMAScript 2023에 소개되었다.
문법 자체는 간단하다.
array.with(index, value)
원하는 배열순서 index값에 value를 입력하면 된다.
with() 메서드는 언제나 밀집 배열을 생성한다는 성격이 있다.
매개변수
index
배열을 변경할 0 기반 인덱스이며 정수로 변환되는 값입니다.
- 음수 인덱스는 배열의 끝부터 역산합니다 — index < 0인 경우 index + array.length가 사용됩니다.
- 정규화 후 인덱스가 범위를 벗어나면, RangeError가 발생합니다.
주어진 인덱스에 할당할 값입니다.
반환 값
index의 요소 값이 value로 대체된 새로운 배열.
예제
하나의 요소만 변경한채로 새로운 배열을 만들기
const arr = [1, 2, 3, 4, 5];
console.log(arr.with(2, 6)); // [1, 2, 6, 4, 5]
console.log(arr); // [1, 2, 3, 4, 5]
희소 배열에서 with() 사용하기
with() 메서드는 언제나 밀집 배열을 생성합니다.
const arr = [1, , 3, 4, , 6];
console.log(arr.with(0, 2)); // [2, undefined, 3, 4, undefined, 6]
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/with
Array.prototype.with() - JavaScript | MDN
Array 인스턴스의 with() 메서드는 주어진 인덱스의 값을 변경하기 위해 대괄호 표기법을 사용하는 것의 복사 버전입니다. 이 함수는 지정된 인덱스의 요소가 지정된 값으로 대체된 새 배열을 반환
developer.mozilla.org
'Javascript > 문법' 카테고리의 다른 글
[javascript] 이벤트 버블링과 캡처링 (1) | 2023.12.26 |
---|---|
[javascript] 동적 모듈 가져오기(import) (0) | 2023.10.27 |
[Javascript] Promise.allSettled(feat. Promise.all 차이) (0) | 2023.07.09 |
[jvascript] encodeURIComponent (0) | 2023.04.16 |
[javascript] structuredClone()-새로운 객체 복사 방법 (0) | 2023.01.03 |