본문 바로가기
javascript

Array 오브젝트 엘리먼트 삽입, 첨부

by rami_ 2021. 11. 4.

unshift()

구분 데이터(값)
data 기준
파라미터 [item 1[, item2 [, ..]]] opt
반환 추가 후의 length

0번 인덱스에 파라미터 값 삽입

배열에 있던 엘리먼트는 뒤로 이동

var value = [1, 2];

value.unshift(345,67);

log(value); //[345, 67, 1, 2]

 

push()

구분 데이터(값)
data 첨부
파라미터 [item 1[, item2 [, ..]]] opt
반환 첨부 후의 length

배열 끝에 파라미터 값을 첨부

var value = [1, 2];

value.push(345, 67);

log(value); //[1, 2, 345, 67]

 

concat()

구분 데이터(값)
data 연결기준
파라미터 [item 1[, item2 [, ..]]] opt
반환 연결결과

배열에 파라미터 값을 연결하여 반환

var value = [1, 2];

var result = value.concat(3, 4);

log(result); //[1, 2, 3, 4]

파라미터가 1차원 배열이면 값만 반영

var value = [1, 2];

var result = value.concat([3], [4]);

log(result); //[1, 2, 3, 4]

 

slice()

구분 데이터(값)
data 대상
파라미터 시작 인덱스, 디폴트 : 0
끝 인덱스 opt, 디폴트 : length
반환 [결과]

배열의 일부를 복사하여 배열로 반환

 첫번째 파라미터의 인덱스부터 두번째 인덱스 직전까지

var origin = [1, 2, 3, 4, 5];

var result = origin.slice(1, 3);

log(result); // [2, 3] 1번 인덱스부터 3번 인덱스 직전까지 복사. 즉 1, 2번 복사

log(origin); //[1, 2, 3, 4, 5] 복사 대상 원본은 바뀌지 않음.

true, false를 숫자로 변환

var value = [1, 2, 3, 4, 5];

log(value.slice(true, 3)); //[2, 3] true = 1

log(value.slice(false, 3)); //[1, 2, 3] false = 0

첫번째 파라미터만 작성

log([1, 2, 3, 4, 5].slice(2)); // [3, 4, 5] 첫번째 파라미터를 작성하고 두번째를 작성하지 않으면 2번 인덱스부터 끝까지 반환

첫번째 파라미터 값이 클 때

log([1, 2, 3, 4, 5].slice(4, 3)); //[] 첫번째 파라미터 값이 두번째 파라미터 값보다 크면 빈배열을 반환

파라미터에 음수 작성

var value = [1, 2, 3, 4, 5];

log(value.slice(-4, -2)); //[2, 3] 파라미터 값이 음수이면 length값을 더함. slice(1, 3)을 실행.