728x90
๐๏ธโ ๊ตฌ์กฐ๋ถํดํ ๋น
- ๋ฐฐ์ด ๋๋๊ฐ์ฒด์ ๊ตฌ์กฐ๋ฅผ ๋ถํดํด์ ๋ถํด๋ ๊ฐ์ ๊ฐ๋ณ์ ์ธ ๋ณ์์ ๋ด๋ ํํ์์ ์๋ฏธ
- ๊ฐ๊ฐ์ ์์๋ฅผ ์๋ก ๋ค๋ฅธ ๋ณ์์ ๊ฐ์ผ๋ก ์ ์ฅ์ ํ๋ ค๋ฉด ๊ฐ๊ฐ์ ์ธ๋ฑ์ค๋ก ์์์ ์ ๊ทผ์ ํด์ ๋ณ์์ ๊ฐ์ผ๋ก ์ง์
- ๋ฐฐ์ด ๋ด๋ถ์ ๊ฐ์ ์๋ก์ด ๋ณ์์ ๊ฐ๊ฐ ํ ๋นํ๊ณ ์ ํ๋ค๋ฉด ํ๋์ฉ ๋ณ์๋ฅผ ์ ์ธํ๊ณ ๊ฐ์ ํ ๋นํ๋ ๊ณผ์ ์ ๊ฑฐ์นจ
const arr = [1, 2, 3, 4, 5];
const one = arr[0];
const two = arr[1];
const three = arr[2];
๐๏ธโ ๋ฐฐ์ด์ ๊ตฌ์กฐ๋ถํดํ ๋น
- ๋ณ์๋ฅผ ์ ์ธํ๊ณ ํ ๋นํ๋ ๊ณผ์ ์ ํ ๋ฒ์ ํด๊ฒฐํ ์ ์์
- ๋์ด์ ์์๋ค๊ฐ ์ฐ์ธก์๋ค๊ฐ ์์ฑ์ ํด์ฃผ๋ฉด ์ค๋ฅธ์ชฝ์ ์ฃผ์ด์ง ๋ฐฐ์ด์ ๊ตฌ์กฐ ๋ถํดํด์ ์ข๋ณ์ ์์นํ๊ณ ์๋ ๋ณ์๋ค์ ๊ฐ๊ฐ ํ ๋นํ๊ฒ ๋จ
const arr = [1, 2, 3, 4, 5];
const [one, two, three] = arr;
console.log(one, two, three);
- ์ผ๋ฐ ๋ณ์์ ๋์ผํ๊ฒ ์ฌ์ฉ ๊ฐ๋ฅ
๐๏ธโ ๊ฐ์ฒด์ ๊ตฌ์กฐ๋ถํดํ ๋น
- ํ๋กํผํฐ์ ๊ฐ๋ค์ ๊ฐ๊ฐ์ ๋ณ์๋ก ๊ตฌ์กฐ ๋ถํด ํ๋น์ ํ๋ ค๋ฉด ์ค๊ดํธ๋ฅผ ์ด์ด ํค๋ฅผ ์ง์ ํ๊ณ ์ฐ๋ณ์ ๊ตฌ์กฐ๋ฅผ ๋ถํดํ ๊ฐ์ฒด ์ง์
const obj = {
x : 10,
y : 20,
};
const {x,y} = obj;
console.log(x,y);
๐๏ธโ ํ ๋นํ ๋ ๋ณ์๋ช ์ง์
- ํค ๊ฐ ๋ค์ ์ฝ๋ก ์ ๋ถ์ด๊ณ ๋ณ๊ฒฝํ ์ด๋ฆ์ ์ง์
const obj = {
x : 10,
y : 20,
};
const {x : hello ,y : world} = obj;
console.log(hello ,world);
๐๏ธโ ๊ฐ์ฒด์ ์ค์ฒฉ ๊ตฌ์กฐ๋ถํดํ ๋น
- ์ค์ฒฉ ๊ด๊ณ๋ฅผ ์ฝ๋ก ๊ณผ ์ค๊ดํธ๋ก ํํ
const obj = {
one: {
two:{
three: 'Bingo',
},
},
};
const {
one: {
two:{ three },
},
} = obj;
console.log(three);
๐๏ธโ ํจ์์ ๊ตฌ์กฐ๋ถํดํ ๋น
- ํจ์์ ์ธ์๋ฅผ ๋ฐ์ ๋ ๊ตฌ์กฐ ๋ถํด๋ฅผ ํ์ฉํ๋ ๋ฐฉ๋ฒ
- ํจ์์์ ์ค๋ธ์ ํธ๋ฅผ ๋ฐ์์ ํ๋กํผํฐ์ ์ ํ๊ธฐ๋ฒ์ ์ฌ์ฉํด์ ์ ๊ทผ
- ์ ํํ ๊ฐ์ ์๋ฉด ์ธ์๋ฅผ ์ ์ํ๋ ๋ถ๋ถ์ ๊ตฌ์กฐ ๋ถํด๋ฅผ ์ ์ฉํ ์ ์์
- ๊ฐ์ฒด๋ฅผ ์๋ฏธํ๋ ์ค๊ดํธ๋ฅผ ์ด๊ณ ์ฌ์ฉํ ํ๋กํผํฐ์ ํค ๊ฐ์ ์์ฑ
- ๋ด๋ถ์์ ํค ๊ฐ์ด ๋ณ์ ์ด๋ฆ์ผ๋ก ์ฌ์ฉํ ์ ์๊ฒ ๋จ
const obj = {
x: 10,
y: 20,
};
function sum(obj){
return obj.x + obj.y;
}
console.log(sum(obj));
const obj = {
x: 10,
y: 20,
};
function sum({x, y}){
return x + y;
}
console.log(sum(obj));
๐๏ธโ ๊ตฌ์กฐ๋ถํดํ ๋น ์์
- ๋ณ์์ ๊ฐ์ ๊ตํ
- ๊ฐ์ด ๋ค๋ฅธ ๋ ๊ฐ์ ๋ณ์๊ฐ ์์ ๋ ๋ ๊ฐ์ ๊ฐ์ ๋ณ๊ฒฝํ๋ ค๋ฉด ์๋ก์ด ๋ณ์๋ฅผ ๋ง๋ค์ด์ temp๋ผ๋ ๋ณ์์๋ค๊ฐ a๊ฐ์ ์ ์ฅํด๋๊ณ a์๋ค b์ ๊ฐ์ ๋ฎ์ด์์ฐ๊ณ b์๋ temp์ ์ ์ฅํด ๋จ๋ a์ ๊ฐ์ ๋ฎ์ด์์์ ๋ณ์์ ๊ฐ์ ๊ตํ
- ๊ตฌ์กฐ๋ถํด์ฌํ ๋น ๋ฐฉ์์ ์ฌ์ฉํด์ a๋ b์๋ค๊ฐ b๋ a์ ๊ฐ์ ๋ฃ์ผ๋ฉด ์ฃผ๊ฐ์ ๋ณ์์ ๊ฐ์ ์ํฉํ ์ ์๊ฒ ๋จ
let a = 123;
let b = 456;
[a, b] = [b, a];
- ๊ตฌ์กฐ๋ถํดํ ๋น์๋ค ๊ธฐ๋ณธ๊ฐ์ ๋ฏธ๋ฆฌ ์ง์ ํ ์ ์์
- ํ ๋น ๋ฐ์ ๋ณ์๋ ๋ ๊ฐ์ธ๋ฐ ํ ๋นํ ๊ฐ์ ํ๋์ธ ๊ฒฝ์ฐ
- a์๋ ์ง์ ํ ๊ฐ์ด ๋ค์ด๊ฐ๋๋ฐ ๊ฐ์ด ๋ถ์กฑํ์ฌ b์๋ ๊ธฐ๋ณธ๊ฐ์ธ undefined๋ก ์ค์ ๋์ด ์์
- ๋ณ์ ์ด๋ฆ์ ์ง์ ํ ๋ถ๋ถ ์ฐ์ธก์ ๋ฑํธ๋ฅผ ์ฌ์ฉํ์ฌ ๊ธฐ๋ณธ๊ฐ์ ์ง์ ํด ์ค ์ ์์
- ๊ฐ์ด ๋ค์ด์ค๋ฉด ๋ค์ด์จ ๊ฐ์ผ๋ก ์ด๊ธฐํ๋์ง๋ง ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ์๋ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ด๊ธฐํ
const [a = 10, b = 20] = [10];
console.log(a, b);
- ์ค๊ฐ๊ฐ์ ์๋ตํ๊ณ ๊ตฌ์กฐ๋ถํดํ ๋น์ ํ๋ ๋ฐฉ๋ฒ
- ๊ตฌ์กฐ๋ฅผ ๋ถํดํด์ ๊ฐ์ ธ์ค๊ณ ์ถ์ ๊ฐ์ด ์ค๊ฐ์ ์ด๋ค ๊ฐ์ ๊ฑด๋๋ฐ๊ณ ๊ฐ์ง๊ณ ์ค๊ณ ์ถ๋ค๋ฉด ๋ณ์ ์ด๋ฆ์ ์ ๋๋ฐ ๊ฑด๋๋ธ ๋ถ๋ถ์ ์๋ฌด๊ฒ๋ ์ ์ง ์๊ณ ์ผํ๋ง ํ์
const arr = [1, 2, 3, 4, 5];
const [one, ,three, ,five] = arr;
console.log(one,three,five);
- ๋๋จธ์ง ์์๋ฅผ ๋๋จธ์ง ์ธ์ ๊ตฌ๋ฌธ์ ํ์ฉํด์ ํ ๋ฒ์ ๊ฐ์ ธ์ฌ ์๋ ์์
- ๋ ๊ฐ์ ๋ณ์๋ฅผ ๊ฐ์ง๊ณ ์ฌ๊ฑฐ๊ณ ๋๋จธ์ง๋ ์ ์ ์ ํ์ฌ others๋ฅผ ๋ถ์ฌ์ ์ฌ์ฉ
const arr = [1, 2, 3, 4, 5];
const [one, two, ...others] = arr;
console.log(one, two, others);
- ์ ๋ ๊ฐ๋ ๊ฐ๊ฐ์ ๋ณ์๋ก ์ ๋ค์ด์๊ณ ๋ง์ง๋ง ์ฌ์๋ ํ๋์ ๋ฐฐ์ด๋ก ๋ฆฌํด
'Front > JavaScript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JavaScript] ์ด๋ฒคํธ (0) | 2024.07.07 |
---|---|
[JavaScript] DOM (0) | 2024.07.06 |
[JavaScript] ๊ฐ์ฒด (0) | 2024.07.05 |
[JavaScript] ๋ฉ์๋ (0) | 2024.07.05 |
[JavaScript] JS ํจ์ (0) | 2024.07.05 |