JS-slice์™€ splice

yezeeยท2022๋…„ 9์›” 13์ผ
0

JS

๋ชฉ๋ก ๋ณด๊ธฐ
2/18
post-thumbnail

๐Ÿ’ญslice

๋ฐฐ์—ด ๋‚ด์˜ ํŠน์ • ์š”์†Œ์˜ index๋ฒ”์œ„์— ๋”ฐ๋ผ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์„ ๋ฆฌํ„ดํ•ฉ๋‹ˆ๋‹ค
slice ๋ฉ”์„œ๋“œ๋Š” ์›๋ณธ ๋ฐฐ์—ด์„ ๋ณ€ํ˜•ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค(๊ธฐ์กด๋ฐฐ์—ด์„ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๋Š”๋‹ค)
๋”ฐ๋ผ์„œ slice๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉ ํ•  ๋•Œ๋Š” ์ƒˆ๋กœ์šด ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค

์œ„์˜ ๊ทธ๋ฆผ์—๋Š” ์ธ์ž 2๊ฐœ๊ฐ€ ๋“ค์–ด๊ฐ”์ง€๋งŒ ํ•„์š”์— ๋”ฐ๋ผ ์ธ์ž๋ฅผ ์ตœ์†Œ 1๊ฐœ๋งŒ ์“ธ ์ˆ˜๋„ ์žˆ๋‹ค

let nums = [1,2,3,4,5]
let nums_new = nums.slice(1,4)

console.log(nums) // [ 1, 2, 3, 4, 5 ]
console.log(nums_new) // [ 2, 3, 4 ]

์ฒซ๋ฒˆ์งธ ์ธ์ž์— ์Œ์ˆ˜๊ฐ€ ๋“ค์–ด๊ฐ€๋Š” ๊ฒฝ์šฐ๋„ ์žˆ์Šต๋‹ˆ๋‹ค
์Œ์ˆ˜๊ฐ€ ๋“ค์–ด๊ฐˆ ๊ฒฝ์šฐ ๋์—์„œ๋ถ€ํ„ฐ ํ•ด๋‹นํ•˜๋Š” ์ˆซ์ž๋งŒํผ์˜ ์š”์†Œ๋ฅผ ๋ฐฐ์—ด์— ๋‹ด์•„ ๋ฆฌํ„ด

//์˜ˆ์ œ1)
let nums = [1,2,3,4,5]
let nums_new = nums.slice(-2)

console.log(nums) // [ 1, 2, 3, 4, 5 ]
console.log(nums_new) // [ 4, 5 ]
//์˜ˆ์ œ2)
function saveNumberTwo(prisoners) {
  
  let temp = prisoners.slice(-2) 
  // slice ๋ฉ”์„œ๋“œ์˜ ๊ด„ํ˜ธ ์•ˆ์— ์Œ์ˆ˜๋งŒ ๋„ฃ์–ด์ฃผ์„ธ์š”
  let answer=temp[0][1];
  // ๋ณ€์ˆ˜ answer์— ํŠน์ •ํ•œ ๊ฐ’์„ ๋Œ€์ž…ํ•ด์ฃผ์„ธ์š”.
  
  return answer;
}

console.log(saveNumberTwo([[0, 1],[1,2],[0,0]])) //2

๐Ÿ’ญsplice

๋ฐฐ์—ด ๋‚ด์˜ ํŠน์ •ํ•œ ์š”์†Œ๋ฅผ ์‚ญ์ œํ•˜๊ฑฐ๋‚˜, ๋‹ค๋ฅธ ์š”์†Œ๋กœ ๋Œ€์น˜ํ•˜๊ฑฐ๋‚˜ ์ƒˆ๋กœ์šด ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ•  ๋•Œ ์‹œ์šฉํ•ฉ๋‹ˆ๋‹ค.(๊ธฐ์กด์˜ ๋ฐฐ์—ด์„ ๋ณ€๊ฒฝํ•œ๋‹ค)

์œ„์˜ ๊ทธ๋ฆผ์—๋Š” ์ธ์ž 3๊ฐœ๊ฐ€ ๋“ค์–ด๊ฐ”์ง€๋งŒ ํ•„์š”์— ๋”ฐ๋ผ ์ธ์ž๋ฅผ ์ตœ์†Œ 1๊ฐœ๋งŒ ์“ธ ์ˆ˜๋„ ์žˆ๋‹ค

.splice(์‹œ์ž‘์ ,๊ฐœ์ˆ˜,์•„์ดํ…œ)
1)๋ฐฐ์—ด์˜ index์˜ ์‹œ์ž‘์ 
2)์‚ญ์ œํ•  ์š”์†Œ์˜ ๊ฐœ์ˆ˜
3)์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์€ ์š”์†Œ

.splice(์‹œ์ž‘์ ,๊ฐœ์ˆ˜)
1)์‹œ์ž‘์ ๋ถ€ํ„ฐ ๊ฐœ์ˆ˜๋งŒํผ ์‹ค์ œ ๋ฐฐ์—ด์—์„œ ์•„์ดํ…œ ์ œ๊ฑฐ
2)๊ธฐ์กด์˜ ๋ฐฐ์—ด์ด ์ž˜๋ฆผ

let num = [1,2,3,4,5];
num.splice(2,1,10);

console.log(num); // [ 1, 2, 10, 4, 5 ]
profile
์•„ ๊ทธ๊ฑฐ ๋ญ์˜€์ง€?

0๊ฐœ์˜ ๋Œ“๊ธ€