์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ๋ฅ๋ฌ๋
- abap
- github
- ์๊ณ ๋ฆฌ์ฆ
- ์ฝ๋ฉํ ์คํธ
- nlp
- Git
- ์ธ๊ณต์ง๋ฅ
- ๊นํ๋ธ
- DFS
- tableau
- ๋น ๋ฐ์ดํฐ
- ์ฝํ
- ํ์ด์ฌ
- AWS
- ํ๋ธ๋ฃจ
- ์์ฐ์ด์ฒ๋ฆฌ
- sap
- ์๋ง์กด์น์๋น์ค
- ํ ์คํธ๋ง์ด๋
- ํ ์คํธ๋ถ์
- ๋ฐฑ์ค
- erp
- AI
- react
- ํ๋ธ๋ก
- ๋ฐ์ดํฐ๋ถ์
- ์๋ฐ์คํฌ๋ฆฝํธ
- ๋ฐ์ดํฐ ๋ถ์
- ๋ฆฌ์กํธ
- Today
- Total
Hey Tech
[JavaScript] ๋ฐฐ์ด ์ธ๋ฑ์ฑ์ผ๋ก ํน์ ์์ ์ถ๋ ฅ/์ ๊ฑฐ/์ถ๊ฐํ๊ธฐ(slice, splice ํจ์) ๋ณธ๋ฌธ
[JavaScript] ๋ฐฐ์ด ์ธ๋ฑ์ฑ์ผ๋ก ํน์ ์์ ์ถ๋ ฅ/์ ๊ฑฐ/์ถ๊ฐํ๊ธฐ(slice, splice ํจ์)
Tony Park (ํ ๋) 2021. 12. 1. 16:52๐ก ๋ชฉํ
JavaScript์์ ๋ฐฐ์ด ์ธ๋ฑ์ฑ์ ํตํด ์์๋ฅผ ์ถ๋ ฅ, ์ ๊ฑฐ, ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ ๋ํด ํ์ตํ๋ค.
1. slice ํจ์: ํน์ ๊ตฌ๊ฐ ์ธ๋ฑ์ค์ ์์ ๋ฐํ
ํจ์ ์ํ
๋ฐฐ์ด.slice(์์ ์ธ๋ฑ์ค, ๋ ์ธ๋ฑ์ค)
slice ํจ์๋ ํน์ ๊ตฌ๊ฐ์ ์ธ๋ฑ์ค์ ํด๋นํ๋ ์์๋ฅผ ๋ฐํํฉ๋๋ค.
2๊ฐ์ ์ ์ํ ๋งค๊ฐ๋ณ์๋ฅผ ์ ๋ฌํ๋๋ฐ ๊ฐ๊ฐ ์์ ์ธ๋ฑ์ค, ๋ ์ธ๋ฑ์ค์ ๋๋ค.
ํนํ, ๋์ ์ธ๋ฑ์ค๋ ํฌํจํ์ง ์๊ธฐ ๋๋ฌธ์,
์์๋ฅผ ์ถ์ถํ๋ ๊ตฌ๊ฐ์ ์ํ์ ์ผ๋ก ํํํ๋ฉด [์์์ , ๋์ )์ ๋๋ค.
์์ ์ฝ๋
let arr1 = [1, 2, 3, 4, 5, 6, 7, 8];
let arrSlice = arr1.slice(2, 6); // [start, end) ๊ตฌ๊ฐ ์ธ๋ฑ์ฑ
console.log(arrSlice); // 3, 4, 5, 6
์์ ์์ ์์ ์์์ ์ 2์ด๊ณ ๋์ ์ 6์ด๋ฏ๋ก 2๋ฒ์งธ๋ถํฐ 5๋ฒ์งธ ์์๋ฅผ ๋ฐํํฉ๋๋ค.
2. splice ํจ์: ํน์ ๊ตฌ๊ฐ ์ธ๋ฑ์ค์ ์์ ์ญ์ /์ถ๊ฐ
ํจ์ ์ํ
๋ฐฐ์ด.splice(์์ ์ธ๋ฑ์ค, ์ญ์ ํ ๋ฐ์ดํฐ ๊ฐ์, ์ถ๊ฐํ ์์ ๋์ด)
splice ํจ์๋ ํน์ ์ธ๋ฑ์ค์์๋ถํฐ ์์ํ์ฌ ์์ N๊ฐ๋ฅผ ์ญ์ ํ๊ฑฐ๋ ์ฌ์ฉ์ ์์๋๋ก ์์๋ฅผ ์ถ๊ฐํฉ๋๋ค.
์๋ ์์ ์ฝ๋๋ฅผ ๋ณด๋ฉด ์ง๊ด์ ์ผ๋ก ํจ์ ์ฌ์ฉ๋ฐฉ๋ฒ์ ์ดํดํ์ค ์ ์์ต๋๋ค.
์์ ์ฝ๋ 1
let arr2 = [1, 2, 3];
arr2.splice(1, 0, 4, 5); // ์์ ์ธ๋ฑ์ค: 1, ์์ ์ญ์ ๊ฐ์: 0, ๋ฐ์ดํฐ [4, 5] ์ถ๊ฐ
console.log(arr2); // [1, 4, 5, 2, 3]
์์ ์ฝ๋ 2
let arr3 = [10, 20, 30, 40, 50];
arr3.splice(2, 2, 6, 7, 88, 99, 77); // ์์ ์ธ๋ฑ์ค: 2, ์์ ์ญ์ ๊ฐ์: 2, ๋ฐ์ดํฐ [6, 7, 88, 99, 77] ์ถ๊ฐ
console.log(arr3); // [10, 20, 6, 7, 88, 99, 77, 50]
ํฌ์คํ ๋ด์ฉ์ ์ค๋ฅ๊ฐ ์๋ค๋ฉด ์๋์ ๋๊ธ ๋จ๊ฒจ์ฃผ์ธ์!
๊ทธ๋ผ ์ค๋๋ ์ฆ๊ฒ๊ณ ๋ฉ์ง ๋ง๋์๊ธธ ๋ฐ๋๋๋ค.
๊ณ ๋ง์ต๋๋ค :-)