개발Story

배열의 인덱스 값을 변경하는 Array.prototype.with()가 ECMAScript 2023에 소개되었다.

 

문법 자체는 간단하다.

 

array.with(index, value)

 

원하는 배열순서 index값에 value를 입력하면 된다.

with() 메서드는 언제나 밀집 배열을 생성한다는 성격이 있다.

매개변수

index

배열을 변경할 0 기반 인덱스이며 정수로 변환되는 값입니다.

  • 음수 인덱스는 배열의 끝부터 역산합니다 — index < 0인 경우 index + array.length가 사용됩니다.
  • 정규화 후 인덱스가 범위를 벗어나면, RangeError가 발생합니다.
value

주어진 인덱스에 할당할 값입니다.

반환 값

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

 

profile

개발Story

@슬래기

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!