자바스크립트 - 객체

물체



Object - MDN

개체는 속성(키/값 쌍)의 모음입니다. 값이 함수이면 속성은 메서드가 됩니다.
개체는 Object() 생성자, Object.create() 또는 리터럴 표기법을 사용하여 만들 수 있습니다.
  • Object() 생성자: Object 생성자는 지정된 값에 대한 개체 래퍼를 만듭니다. - new Object(value)
  • 값이 null 또는 undefined 인 경우 빈 객체를 생성하고 반환합니다.


  •   let obj1 = new Object(null);
      console.log(obj1); // {}
      let obj2 = new Object(undefined);
      console.log(obj2); // {}
      // let obj = new Object() will do the same
    

  • 그렇지 않으면 주어진 값에 해당하는 유형의 객체를 반환합니다.

  •   let obj3 = new Object(2);
      console.log(obj3); // [Number: 2]
      let obj4 = new Object("hi");
      console.log(obj4); // [String: 'hi']
      let obj5 = new Object(true);
      console.log(obj5); // [Boolean: true]
    

  • 값이 이미 객체인 경우 값을 반환합니다.

  •   let obj6 = new Object({ age: 2 });
      console.log(obj6); // { age: 2 }
    

  • Object.create()Object.create() 메서드는 기존 개체를 새로 만든 개체의 프로토타입으로 사용하여 새 개체를 만듭니다.

  •   const person = {
        isHuman: false,
        printIntroduction: function () {
          console.log(`My name is ${this.name}. Am I human? ${this.isHuman}`);
        },
      };
    
      const me = Object.create(person);
    
      me.name = "Matthew"; // "name" is a property set on "me", but not on "person"
      me.isHuman = true; // inherited properties can be overwritten
    
      me.printIntroduction();
      // expected output: "My name is Matthew. Am I human? true"
    

  • 리터럴 표기법

  • const object = { a: 1, b: 2, c: 3 };
    
    object['key'] 또는 object.key 를 사용하여 개체의 값에 액세스할 수 있습니다.

    const object = { a: 1, b: 2, c: 3 };
    console.log(object["a"]); // 1
    console.log(object.a); // 1
    


    개체에서 속성 삭제 - delete 연산자
    JavaScriptdelete 연산자는 개체에서 속성을 제거합니다.

    const Employee = {
      firstname: "John",
      lastname: "Doe",
    };
    
    console.log(Employee.firstname);
    // expected output: "John"
    
    delete Employee.firstname;
    
    console.log(Employee.firstname);
    // expected output: undefined
    

    좋은 웹페이지 즐겨찾기