Bae

[Javascript] 배열(fill, slice, splice) 본문

Javascript

[Javascript] 배열(fill, slice, splice)

Bae:) 2022. 2. 11. 19:01

ㅁ 배열 요소 수정

fill(): 배열을 지정한 값으로 채우며, 원본 배열을 수정

fill(배열을 채울 값, 시작 인덱스, 끝 인덱스)

const arr = [1, 2, 3];

arr.fill(10);		//필수인자인 배열을 채울 값만 지정
console.log(arr);	//[10, 10, 10] 출력

 

const arr = [1, 2, 3];

arr.fill(10, 2);	// (채울 값, 시작 인덱스)
console.log(arr);	// [1, 2, 10] 출력

 

const arr = [1, 2, 3];

arr.fill(10, 1, 3);		// (채울 값, 시작 인덱스, 끝 인덱스)
console.log(arr);		// [1, 10, 10] 출력, 끝 인덱스의 이전 위치까지 값으로 채움

 

slice(): 배열의 복사본을 조각 내 새로운 배열로 반환, 선택적으로 시작 인덱스와 종료 인덱스를 가짐

const arr = [1, 2, 3];

console.log(arr.slice());	// 인자가 주어지지 않은 경우 배열을 모두 복사한다. [1, 2, 3] 출력
console.log(arr);		// [1, 2, 3] 출력

 

시작인덱스를 지정하는 경우 주어진 시작 인덱스 위치부터 배열의 마지막 요소까지 잘라 새로운 배열 반환

const arr = [1, 2, 3];

console.log(arr.slice(1));		// [2, 3]
console.log(arr);			// [1, 2, 3]

 

시작 인덱스와 종료 인덱스를 다 지정한 경우, 주어진 시작 인덱스 부터 종료 인덱스의 이전 인덱스 위치까지 잘라 새로운 배열 반환

const arr = [1, 2, 3];

console.log(arr.slice(1, 2));	//[2] 출력
console.log(arr);		// [1, 2, 3] 출력

 

splice(): 필수 인자로 시작 인덱스 필요, 선택 인자로 배열에서 제거할 요소의 개수와 배열에 추가할 요소들을 가질 수 있음

* splice함수는 배열의 원본이 수정됨에 주의 필요

 

시작인덱스만 인자로 지정할 경우, 시작 인덱스 위치부터 배열의 마지막 요소까지 모두 제거

const arr = [1, 2, 3];

console.log(arr.splice(2));	// [3] 출력
console.log(arr);		// [1, 2] 출력

 

시작 인덱스와 배열에서 제거할 요소의 개수를 지정할 경우, 시작 인덱스 위치부터 주어진 개수만큼 요소 제거

const arr = [1, 2, 3];

console.log(arr.splice(1, 2));	//[2, 3] 출력
console.log(arr);		// [1] 출력

 

시작 인덱스, 제거할 요소, 추가할 요소를 다 지정하면 시작 인덱스부터 주어진 개수만큼 요소를 제거하고, 그 자리에 추가할 요소를 추가

const arr = [1, 2, 3];

console.log(arr.splice(1, 2, 10));	// [2, 3] 출력
console.log(arr);			// [1, 10] 출력
Comments