JavaScript

[JavaScript] Getter & Setter

Asher Park 2023. 9. 7. 22:09

Getter 와 Setter 

Getter 와 Setter 은 자체적으로 값을 갖고 있지 않고, 객체의 프로퍼티를 읽거나 조작할 때 사용하는 접근자 함수이다.

Getter 는 메서드 이름 앞에 get 키워드를 사용해 정의하고, 

Setter 는 메서드 이름 앞에 set 키워드를 사용해 정의한다.

 

const person = {
    firstName : 'Asher',
    lastName : 'Park',
    
    // getter 
    get fullName() {
    	return `${this.firstName} ${this.lastName}`;
    }
    
    // setter
    set fullName(name) {
        [this.firstName, this.lastName] = name.split(' ');
    }
};

console.log(person.fullName); // "Asher Park"

// Setter 호출
person.fullName = 'John Park';

위의 코드에서,

firstName 과 lastName 은 일반적인 데이터 프로퍼티고,

get / set 이 붙은 함수 fullName 이 접근자 프로퍼티다.

 

따라서,

Getter 는 함수처럼 호출하는 것이 아니라 프로퍼티처럼 참조하는 형식으로 사용되며,

Setter 도 호출하는 것이 아니라, 값을 할당하는 형식으로 사용된다.