본문 바로가기

Vanila Javascript/면접 질문

[면접 질문 #6] What is the purpose of array splice method?

아래 글은 https://github.com/sudheerj/javascript-interview-questions#what-are-the-possible-ways-to-create-objects-in-javascript 에서 번역한 내용이며, Sudheer Jonna 로 부터 번역 허락을 받았음을 알립니다.

 

이 글을 읽고, 면접 뿐만 아니라 자바스크립트의 기본 및 심화 개념을 잡는데 도움이 되었으면 좋겠습니다. 영어 전공자가 아니므로, 오역 또는 제 나름대로의 직역이 있습니다.

 

#6 배열의 메소드인 splice를 사용하는 목적은 무엇일까?

 

** slice와 구분해서 알아두자

 

splice() 메소드는 배열에 값을 추가하거나 배열로부터 값을 제거할 때 사용한다. 첫번 째 인자는 추가/삭제를 위한 배열의 위치를 명시하고, 두번 째 인자는 제거 될 요소의 수를 가리킨다. 각가의 추가적인 요소는 배열에 추가된다. 

아래 예시를 보자

 

const arrayIntegersOrigianl1 = [1,2,3,4,5]
const arrayIntegersOrigianl2 = [1,2,3,4,5]
const arrayIntegersOrigianl3 = [1,2,3,4,5]

const arrayIntegers1 = arrayIntegersOrigianl1.splice(0, 2) // returns [1, 2] original array: [3, 4, 5]
const arrayIntegers2 = arrayIntegersOrigianl1.splice(3) // returns [4, 5] original array: [1, 2, 3]
const arrayIntegers3 = arrayIntegersOrigianl1.splice(3, 1, 'a', 'b', 'c') // return [4] origianl arrya: [1, 2, 3, 'a', 'b', 'c', 5]

 

 

Note: splice() 메소드는 기존에 있던 배열 수정하고, 제거된 배열을 반환한다.