๐งฑ๐งฑ๐งฑ JS์ ๊ฐ์ฒด ๊ตฌ์กฐ ๋ถํด: ๊ธฐ๋ณธ๊ฐ ์ค์
5135 ๋จ์ด javascripttutorialwebdevbeginners
JavaScript์์ ๊ฐ์ฒด๋ฅผ ๊ตฌ์กฐํํ ๋ ๊ธฐ๋ณธ๊ฐ์ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ์์๋ด ๋๋ค.
๊ตฌ์กฐ ๋ถํด๊ฐ ์ด๋ป๊ฒ ์๋ํ๋์ง ๋ค์ ๊ฐ๋จํ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
const pastry = {
name: "waffle"
};
const { name }ย = pastry;
console.log(name); // waffle
์กด์ฌํ์ง ์๋
pastry
๊ฐ์ฒด์ ์์ฑ์ ์ก์ธ์คํ๋ ค๊ณ ํ ๋ ์ด๋ค ์ผ์ด ๋ฐ์ํ๋์ง ๋ด
์๋ค.const pastry = {
name: "waffle"
};
const { sweetness }ย = pastry;
console.log(sweetness); // undefined
Destructuring ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ๋ฉด ์์ฑ์ด ์ ์๋์ง ์์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ๊ฐ์ ์ค์ ํ ์ ์์ต๋๋ค.
const { sweetness = 70 }ย = pastry;
console.log(sweetness); // 70
๊ธฐ๋ณธ๊ฐ์ ์์ฑ์ด ์ค์ ๋ก
undefined
์ธ ๊ฒฝ์ฐ์๋ง ์ค์ ๋ฉ๋๋ค. ๋ฐ๋ผ์ false
, null
๋๋ 0
์ ๊ฐ์ ๋ค๋ฅธ null ๊ฐ์ ๋ํ ๊ธฐ๋ณธ๊ฐ์ ์ค์ ํ์ง ์์ต๋๋ค.๊ธฐ๋ณธ๊ฐ๊ณผ ์ด๋ฆ ๋ฐ๊พธ๊ธฐ๋ฅผ ๊ฒฐํฉํ ์๋ ์์ต๋๋ค. ์ด๋ฆ ๋ณ๊ฒฝ์ด ์ด๋ป๊ฒ ์๋ํ๋์ง ๊ฐ๋จํ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
const pastry = {
name: "waffle",
tastiness: 100,
};
// let's get the value of tastiness and store it in deliciousness
const { tastiness: deliciousness }ย = pastry;
console.log(deliciousness); // 100
// and now let's combine renaming and defaults
// tastiness is set, so no default will be used
const { tastiness: palatability = 75 }ย = pastry;
console.log(palatability); // 100
// sweetness is undefined; the default will be used
const { sweetnewss: sweet = 50 }ย = pastry;
console.log(sweet); // 50
์น ๊ฐ๋ฐ์ ๋ ์ํ๊ณ ์ถ์ผ์ญ๋๊น?
๐๐๐subscribe to the Tutorial Tuesday โ๏ธnewsletter
Reference
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(๐งฑ๐งฑ๐งฑ JS์ ๊ฐ์ฒด ๊ตฌ์กฐ ๋ถํด: ๊ธฐ๋ณธ๊ฐ ์ค์ ), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://dev.to/benjaminmock/object-destructuring-in-js-setting-default-values-3dlkํ ์คํธ๋ฅผ ์์ ๋กญ๊ฒ ๊ณต์ ํ๊ฑฐ๋ ๋ณต์ฌํ ์ ์์ต๋๋ค.ํ์ง๋ง ์ด ๋ฌธ์์ URL์ ์ฐธ์กฐ URL๋ก ๋จ๊ฒจ ๋์ญ์์ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ ์ธ ๋ฐ๊ฒฌ์ ์ ๋ (Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค