29. slice( )
"배열".slice(시작 위치, [끝나는 위치])
- 배열 시작 위치에서 종료 위치 값을 추출하여, 새로운 배열을 반환합니다.
- 끝나는 위치의 요소는 추출하지 않습니다.
- 시작 위치, 끝나는 위치에 음수가 들어가게 되면 배열의 맨 뒤에서부터 위치 값을 추출합니다.
{
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(0); // ['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(1); // ['a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(2); // ['v', 'a', 's', 'c', 'r', 'i', 'p', 't']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(0, 1); // ['j']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(1, 2); // ['a']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(0, 2); // ['j', 'a']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(0, 3); // ['j', 'a', 'v']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(5, 10); // ['c', 'r', 'i', 'p', 't']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(5, -1); // ['c', 'r', 'i', 'p']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(5, -2); // ['c', 'r', 'i']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(-1); // ['t']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(-2); // ['p', 't']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(-3); // ['i', 'p', 't']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(-3, -1); // ['i', 'p']
['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(-3, -2); // ['i']
console.log(['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't'].slice(시작위치, 끝나는위치));
}
29. splice( )
"배열".splice(시작 위치, [삭제 갯수], [요소])
- 배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용을 변경합니다.
{
const arrNum1 = [100, 200, 300, 400, 500];
const result1 = arrNum1.splice(1);
console.log(arrNum1); // [100]
console.log(result1); // [200, 300, 400, 500]
const arrNum2 = [100, 200, 300, 400, 500];
const result2 = arrNum2.splice(1, 2);
console.log(arrNum2); // [100, 400, 500]
console.log(result2); // [200, 300]
const arrNum3 = [100, 200, 300, 400, 500];
const result3 = arrNum3.splice(1, 4);
console.log(arrNum3); // [100]
console.log(result3); // [200, 300, 400, 500]
const arrNum4 = [100, 200, 300, 400, 500];
const result4 = arrNum4.splice(1, 2, "javascript");
console.log(arrNum4); // [100, 'javascript', 400, 500]
console.log(result4); // [200, 300]
const arrNum5 = [100, 200, 300, 400, 500];
const result5 = arrNum5.splice(1, 0, "javascript");
console.log(arrNum5); // [100, 'javascript', 200, 300, 400, 500]
console.log(result5); // [ ]
const arrNum6 = [100, 200, 300, 400, 500];
const result6 = arrNum6.splice(0, 4, "javascript");
console.log(arrNum6); // ['javascript', 500]
console.log(result6); // [100, 200, 300, 400]
const arrNum7 = [100, 200, 300, 400, 500];
const result7 = arrNum7.splice(2, 2, "javascript", "react");
console.log(arrNum7); // [100, 200, 'javascript', 'react', 500]
console.log(result7); // [300, 400]
const arrNum8 = [100, 200, 300, 400, 500];
const result8 = arrNum8.splice(-2, 2, "javascript");
console.log(arrNum8); // [100, 200, 300, 'javascript']
console.log(result8); // [400, 500]
}