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']  -1은 뒤에값이 사라지는
['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']    

30. splice()

"배열".splice(시작 위치, [삭제 갯수], [요소])
  • 배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용을 변경합니다.
  • -는 뒤에부터 시작합니다.(뒤는 1부터)
// const arrNum1 = [100, 200, 300 ,400 ,500];
// const result1 = arrNum1.splice(1);

// console.log(result1);//[200, 300, 400, 500]
// console.log(arrNum1);//[100]

// const arrNum2 = [100, 200, 300 ,400 ,500];
// const result2 = arrNum2.splice(1, 2);

// console.log(result2);//[200, 300]
// console.log(arrNum2);//[100, 400, 500]

// const arrNum3 = [100, 200, 300 ,400 ,500];
// const result3 = arrNum3.splice(1, 4);

// console.log(result3);//[200, 300, 400, 500]
// console.log(arrNum3);//[100]

// const arrNum4 = [100, 200, 300 ,400 ,500];
// const result4 = arrNum4.splice(1, 2, "javascript");

// console.log(result4);//[200, 300]
// console.log(arrNum4);//[100, 'javascript', 400, 500]

// const arrNum5 = [100, 200, 300 ,400 ,500];
// const result5 = arrNum5.splice(1, 0, "javascript");

// console.log(result5);//[]
// console.log(arrNum5);//[100, 'javascript', 200, 300, 400, 500]

// const arrNum6 = [100, 200, 300 ,400 ,500];
// const result6 = arrNum6.splice(0, 4, "javascript");

// console.log(result6);//[100,200,300,400]
// console.log(arrNum6);//['javascript', 500]

// const arrNum7 = [100, 200, 300 ,400 ,500];
// const result7 = arrNum7.splice(2, 2, "javascript", "react");

// console.log(result7);//[300,400]
// console.log(arrNum7);//[100, 200, 'javascript', 'react', 500]

const arrNum8 = [100, 200, 300 ,400 ,500];
const result8 = arrNum8.splice(-2, 2, "javascript");

console.log(result8);//[400,500]
console.log(arrNum8);//[100, 200, 300, 'javascript']