ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [js] 객체의 property
    코딩일지/TIL 2022. 6. 26. 21:02

    객체의 property

    1. data property
      데이터를 가진 것들.

    2. accessor property
      본질은 함수이나, 보기엔 그냥 일반적인 프러퍼티 같음.
      getter, setter 가 있음.

    let car = {
     _value : "tesla",
      get name(){
          return this._value;
       },
      set name(value){
          this._value = value;  
      } 
    }
    console.log(car.name); //tesla, getter가 호출됨.
    car.name = "hyundai"; //setter 가 호출됨.
    console.log(car.name); //hyundai

    Example [1]

    let user = {
      name: "John",
      surname: "Smith",
    
      get fullName() {
        return `${this.name} ${this.surname}`;
      },
    
      set fullName(value) {
        [this.name, this.surname] = value.split(" ");
      }
    };
    
    // 주어진 값을 사용해 set fullName이 실행됩니다.
    user.fullName = "Alice Cooper";
    
    alert(user.name); // Alice
    alert(user.surname); // Cooper

    접근자 프러퍼티의 설명자[1]

    get– 인수가 없는 함수로, 프로퍼티를 읽을 때 동작함
    set– 인수가 하나인 함수로, 프로퍼티에 값을 쓸 때 호출됨
    enumerable – 데이터 프로퍼티와 동일함
    configurable– 데이터 프로퍼티와 동일함

    활용 방법

    변수를 받을 때 한번 validation 을 할 수 있다.

    References

    [1] 프로퍼티 getter와 setter

    '코딩일지 > TIL' 카테고리의 다른 글

    [js] Window interface  (0) 2022.06.28
    [Linux] install package with .deb  (0) 2022.06.28
    [svg] svg manipulation  (0) 2022.06.26
    [Linux] apt  (0) 2022.06.26
    [svg] SVG 101  (0) 2022.06.26

    댓글

Designed by Tistory.