Objec


let plan1 = {
  name: "Basic",
  price: 3.99,
  space: 100,
  transfer: 1000,
  pages: 10
};

객체는 {}(중괄호)로 감싸져 있다

이름:값 구조로 되어있다

쉼표로 분리된 목록의 형태이다.


let plan1 = {   
  name: "Basic"
};

console.log(plan1.name);       //Basic
console.log(plan1["name"]);    //Basic

대괄호 안에는 변수가 들어갈 수 있다.

let plan1 = {   
  name: "Basic"
};

let propertyName = "name";

console.log(plan1[propertyName]);      // Basic

let myObj = {
  property1: "hello",
  property2: [1,2,3,4,5],
  property3: {
    childproperty: "haha"
  }
};

let name = "property";
console.log(myObj[name+"1"]);            // hello
console.log(myObj[name+"2"]);            // 1,2,3,4,5,
console.log(myObj[name+"3"]);            // childproperty: "haha"
console.log(myObj[name+"3"]["child"+name]);     // haha

console.log(myObj.property1);            // hello
console.log(myObj.property2);            // 1,2,3,4,5
console.log(myObj.property3);            // childproperty: "haha"
console.log(myObj.property3.childproperty);    // haha

위의 myObj 객체를 정의한 후에 property 값을 수정할 수있다

let name = "property1";

myObj[name] = ["hi", "hello"];

console.log(myObj);             // property1: [ 'hi', 'hello' ]
                                // 텍스트에서 배열로 바꾸었다
myObj.property3.siblingproperty = [3, 6, 9];     
console.log(myObj);          

//  property3 :( childproperty: I "haha",siblingproperty = [3, 6, 9])

배열에 접근하는 방법

console.log(myObj.property1[0]);

객체의 객체의 배열 구조


let objData = {
  name: 50,
  address: { 
    email: "gaebal@gmail.com",
    home: "호그와트"
  },
  books: {
    year: [2019, 2018, 2006],
    info: [{
      name: "JS Guide",
      price: 9000
    }, {
      name: "HTML Guide",
      price: 19000,
      author: "Kim, gae bal"
    }]
  }
};
let bookName = objData.books.info[1].name;
console.log(bookName);              // JS Guide