๐์ ํ๋ฅผ js ์ธ์ด๋ก ๋ฐ์ดํฐ ๊ตฌํ์ ์๋์ ๊ฐ์ด ๋ฐ์ดํฐ ์ ์ฅ์ด ํ์ํ๋ค
let plan1Name = "Basic";
let plan1Price = 3.99;
let plan1Space = 100;
let plan1Data = 1000;
let plan1Pages = 10;
let plan2Name = "Professional";
let plan2Price = 5.99;
let plan2Space = 500;
let plan2Data = 5000;
let plan2Pages = 50;
let plan3Name = "Ultimate";
let plan3Price = 9.99;
let plan3Space = 2000;
let plan3Data = 20000;
let plan3Pages = 500;
plan[]Name
plan[]Price
plan[]Space
plan[]Data
plan[]Pages
์ด ๋ฐ๋ณต๋๋๋ฐ...
์ด๋ฅผ ์ฐ๋ ค๋ฉด
alert(plan2Name + "ํ๋ ๊ฐ๊ฒฉ์ ํ ๋ฌ์ " + plan2Price + "๋ฌ๋ฌ์
๋๋ค.")
alert("์ฉ๋์ " + plan2Space + "GB์ด๊ณ , ...");
๋ณ์ ๋์ด์ด ๋ชน์ ํ์ํด ๋ณด์ธ๋ค ๐
๋ฐ์ดํฐ๊ฐ ๋์ด๋๋ฉด ๋์ด๋ ์๋ก ์ฝ๋๋ ๊ธธ์ด์ง๊ณ ๊ด๋ฆฌํ๊ธฐ ํ๋ ๋ฐ ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๊ฐ์ฒด๋ฅผ ์ด๋ค
plan1{}
plan2{}
plan3{}
๋ผ๋ 3 ๋ฌถ์ ์์
๊ฐ ๊ฐ์ฒด๋ (์๋ฅผ ๋ค์ด plan1์)
{
name : basic,
price : 3.99,
space : 100,
transfer : 1000,
pages : 10
}
'ํค : ๊ฐ' ํํ๋ฅผ ๊ฐ์ง๋ค
๐ ์ด๋ฐ ํํ
let plan1 = {
name: "Basic",
price: 3.99,
space: 100,
transfer: 1000,
pages: 10
};
๊ฐ์ฒด ์ ๊ทผ
๊ฐ์ฒด์ ์ ๊ทผ ํ๊ธฐ ์ํด์ ๋ฐ์ ๋ฌธ๋ฒ์ ๋ณด๋ฉด ๋๋ค.
let plan1 = {
name: "Basic"
};
let propertyName = "name"; // propertyName ํจ์์ ๊ฐ name(plan1 ์์ฑ๊ฐ๊ณผ ์ด๋ฆ ๋์ผ)
console.log(plan1[propertyName]); // plan1[name]
let myObj = {
property1: "hello",
property2: [1,2,3,4,5],
property3: {
childproperty: "haha"
}
};
// ๐ ์ด ๊ฐ์ฒด์ ์ ๊ทผํ๋ ค ํ๋ค
let name = "property";
console.log(myObj[name+"1"]); // property1
console.log(myObj[name+"2"]); // property2
console.log(myObj[name+"3"]); // property3
console.log(myObj[name+"3"]["child"+name]); // property3[childproperty] ์ ๊ฐ์ 'haha'
console.log(myObj.property1);
console.log(myObj.property2);
console.log(myObj.property3);
console.log(myObj.property3.childproperty);
๊ฐ์ฒด + ๋ฐฐ์ด
let objData = {
name: 50,
address: {
email: "gaebal@gmail.com",
home: "์์ํฌ ์ ๋ฆ2ํธ์ "
},
books: {
year: [2019, 2018, 2006],
info: [{
name: "JS Guide",
price: 9000
}, {
name: "HTML Guide",
price: 19000,
author: "Kim, gae bal"
}]
}
};
๐ 'html guide'์ ์ ๊ทผ
let bookName = objData.books.info[1].name;
console.log(bookName);
objData ๋ณ์๋ช
.books ๊ฐ์ฒด
info ์์ฑ "info>๋ฐฐ์ด>๊ฐ์ฒด"
[1] ์ธ๋ฑ์ค ๋ฒํธ
.name ์์ฑ
replit ๋ฌธ์
์ฒ์ ๋ณผ ๋ ๋ฌธ์ ๋ฅผ ์ดํดํ์ง ๋ชปํ๋ค... ๐ฉ
๊ทธ๋์ ์ผ๋จ ์๋ฃ๋ฅผ ์์ ํ๋ก ๋ง๋ค์ด๋ณด์๋๋ฐ (์ธ๋ถ๋ด์ฉ์ ์์๋ก ์ ์!)
์ด ํ ์์์ ์ธ์ (salesArr,reviewArr,likeArr) ๋ฅผ ์ฐ์ด๋ด๋ฉด ๋ ๊ฑฐ ๊ฐ์๋ค.
function getData(salesArr,reviewArr,likeArr){ // 3๊ฐ์ ์ธ์ (๋ฐฐ์ด๊ฐ)
// ์์ฑ๊ฐ๋ง ์ง์ ํด์ ๊ฐ์ฒด ๋ง๋ค๊ธฐ, ๊ฐ์ฒด ์ด๋ฆ์ reuslt๋ก ์ ํด์ฃผ์๋ค
reuslt = {
sumAmount : 0,
sumReview : 0,
sumLike : 0,
};
// ๋ฐฐ์ด์ ๋ฐ๋ณต๋ฌธ ๋๋ ค์ (length ๋ ์ด์ฐจํผ ๋ค ๊ฐ์ผ๋ ๊ฐ์ฅ ์์ ์๋ SalesArr ๋ฅผ ์)
for(let i = 0; i < salesArr.length; i++){
reuslt.sumAmount += salesArr[i][1];
reuslt.sumReview += reviewArr[i][1];
reuslt.sumLike += likeArr[i][1];
}
// ๋น์ด ์๋ reuslt ๊ฐ์ฒด
// reuslt.sumAmount ์์ฑ๊ฐ ์์น ์ค์
// ๋ฐ์ salesArr,reviewArr,likeArr ์ธ์๋ค [[],[],[]] ๋ฐฐ์ด ์์ ๋ฐฐ์ด์ด ํํ๋ [i][1] ๋ฅผ ๋ฃ์ด์ค๋ค
return reuslt;
// reuslt ๋ฆฌํด!
์ด๋ ๊ฒ ๋๋ฉด
์ด๋ ๊ฒ ๊ฐ๋ก๋ก ํ๋ํ๋์ฉ ๊ฐ์ด ๋ง๋ค์ด์ง๋ ๊ฒ...!!!!!
'TIL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
arrow function (0) | 2022.07.23 |
---|---|
js Event๊ด๋ จ (0) | 2022.07.23 |
js ๋ณ์ ์ข ๋ฅ์ TDZ, hoisting (0) | 2022.07.21 |
js string (0) | 2022.07.21 |
๊ฒ์์ฐฝ ๋ง๋ค๊ธฐ (html, css) (0) | 2022.07.21 |
๋๊ธ