๋ชฉ์ฐจ
๋ณ์ ๊ฐ ๊ตํํ๊ธฐ
let a = 1;
let b = 2;
[a, b] = [b, a] //๋๊ดํธ๋ก ํด์ผ ๊ฐ๋ฅ
console.log(a, b)
>>>
2 1
๋ค๋ฅธ ์ธ์ด์ ๋นํด์
๊ตํํ๋ ๊ฒ์ด ๊ฐ๊ฒฐํ๋ค.
ํ ๋ฒ์ ์ฌ๋ฌ ๊ฐ ํ ๋น
let a = 1;
let b = 2;
[a, b] = [3, 4]
console.log(a, b)
>>>
3 4
ํ์ด์ฌ์ ํํ์ฒ๋ผ ์ฌ๋ฌ ๊ฐ์ ํ ๋นํ๋ ๊ฒ์
์์ฒ๋ผ ์จ์ฃผ๋ฉด ๊ฐ๋ฅํ๋ค.
function data(){
return [1, 2]
}
let [a,b] = data()
console.log(a, b)
>>>
1 2
ํจ์์ ๋ฆฌํด๊ฐ์ ๋ฐฐ์ด๋ก ์ง์ ํ๋ ๊ฒ๋
์ฌ๋ฌ ๊ฐ์ ํ ๋น์ํค๋ ๋ฐ์ ์ด์ฉ๊ฐ๋ฅํ๋ค.
๋ฌธ์์ด ๋ถ๋ฆฌ
ํ์ด์ฌ์๋ ์๋ .split() ํจ์!
let data = 'Hello my name is Kassid'
console.log(data.split(' '))
>>>
[ 'Hello', 'my', 'name', 'is', 'Kassid' ]
์ง์ ํ ๊ฐ์ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด์ ๋ถ๋ฆฌํ๊ณ
๋ฐฐ์ด์ ๋ด์์ ๋ฐํํ๋ค.
let data = 'one,two,three,four'
let [n1,n2,n3,n4]=data.split(',')
console.log(n1, n2, n3, n4)
>>>
one two three four
์์ ๊ฐ์ด ๊ตฌ์กฐ ๋ถํด ํ ๋น์๋ ํ์ฉํ ์ ์๋ค.
Rest ํ๋ผ๋ฏธํฐ
... ์ ํจ์์ ์ธ์์ ๋ถ์ฌ์ฃผ๋ ๊ฒ์ด๋ค.
(ํ์ด์ฌ์ *args์ ๊ฐ์ ๊ฐ๋ )
function data(...items) {
console.log(items)
}
data(1,2,3,4,5)
>>>
[ 1, 2, 3, 4, 5 ]
์ฃผ์ํ ์ ์
์ญ์๋ rest ํ๋ผ๋ฏธํฐ๋ ๋ค์ ๋์์ผ
์ค๋ฅ๊ฐ ๋ฐ์ํ์ง ์๋๋ค.
Spread ํ๋ผ๋ฏธํฐ
๋ฐฐ์ด, ๋ฌธ์์ด ๋ฑ iterable ๋ณ์ ์์ ๋ถ์ฌ์
๊ฐ๋ณ ์์ดํ ์ผ๋ก ๋ถ๋ฆฌ ์ํฌ ์ ์๋ค.
(iterable : ๋ฐ๋ณต ๊ฐ๋ฅํ ๊ฐ์ฒด)
const data = [1,2,3,4,5]
console.log(...data)
>>>
1 2 3 4 5
์์ฒ๋ผ ์์ดํ ์ ํ๋์ฉ ๋ถ๋ฆฌํด์ ์ถ๋ ฅํด์ค๋ค.
Spreadํ๋ผ๋ฏธํฐ๋ ํจ์์ ์ธ์ ์์ ๋ง์ถฐ์
ํ๋์ฉ ๋ฐฐ์ด์ ์์ดํ ์ ๋์ ํด์ฃผ๊ณ ์ถ์ ๋
๊ฐ๊ฒฐํ๊ฒ ์ฌ์ฉํ ์ ์๋ค.
function func(a,b,c) {
console.log(a)
console.log(b)
console.log(c)
}
const data = [1,2,3,4,5]
func(...data)
>>>
1
2
3
4
5
๊ธฐ์กด ๋ฐฐ์ด์ ์ด์ฉํด
์๋ก์ด ๋ฐฐ์ด์ ๊ตฌ์ฑํ ๋๋ ์ฌ์ฉํ ์ ์๋ค.
const arr1 = [1,2,3]
const arr2 = [0,...arr1, 4,5,6]
console.log(arr2)
>>>
[ 0, 1, 2, 3, 4, 5, 6 ]
์ด์ ์ ๋ค๋ค๋
concat๊ณผ ๋ค๋ฅธ ์ ์
๋ฐฐ์ด์ ๋ฃ์ ๋ ์์น๋ฅผ ์ ํด์ค ์ ์๋ค๋ ์ ์ด๋ค.
(๋ฌธ์์ด formatingํ๋ ๋๋)
'๐ | WEB DEV > Vanilla JS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
JS_๋ฌธ๋ฒ (4)_Scope (0) | 2022.02.17 |
---|---|
JS_๋ฌธ๋ฒ (3)_ํธ์ด์คํ (0) | 2022.02.16 |
JS_๋ฌธ๋ฒ (1)_์ผํญ์ฐ์ฐ์, ๊ตฌ์กฐ๋ถํด ํ ๋น1 (0) | 2022.02.15 |
JS_๊ธฐ๋ณธ๋ฌธ๋ฒ (6)_๋ฐฐ์ด 2 (๊ด๋ จ ํจ์) (0) | 2022.02.15 |
JS_๊ธฐ๋ณธ๋ฌธ๋ฒ (5)_๋ฐฐ์ด 1 (0) | 2022.02.15 |
๋๊ธ