Non-primitive: Object

목표


객체에 대해 알아본다.

객체 생성 방법


  1. let obj = new Object();
  2. 객체 리터럴 방식(중괄호 이용)
let obj = {
  key1: "value1", //객체 Property
  key2: "value2",
  key3: true,
  key4: NaN,
  key5: function () {}
}; //객체 리터럴 방식

console.log(obj);

결과값:

<aside> 👉 {key1: "value1", key2: "value2", key3: true, key4: NaN, key5: ƒ key5()}

</aside>

key: value 쌍을 객체 프로퍼티라고 부르며, value는 어떤 자료형이든 무관하다.

key는 반드시 문자열이며, 대신 따옴표를 사용하지 않는다.

key1~4는 객체의 멤버, key5는 메서드(함수)라고 한다.

주의사항


key값이 중복되는 프로퍼티가 있다고 해도 에러가 나지는 않지만, 값에 접근할 때 가장 마지막으로 정의된 프로퍼티의 값을 가져가게 되므로 key값은 모두 다른 것이 바람직하다.

객체 프로퍼티 접근 방식


let obj = {
  key1: "value1", //객체 Property
  key2: 123,
  key3: true,
  key4: NaN,
  key5: function () {}
}; //객체 리터럴 방식

console.log(obj.key1); //value1
console.log(obj["key2"]); //123