- getter(획득자) , setter (설정자)
: 접근자 프로퍼티
1. getter 메소드
: 프로퍼티를 읽을 때 동작
const numbers={
a:1,
b:2,
get sum(){
console.log('sum 함수가 실행됩니다');
return this.a + this.b;
}
};
console.log(numbers.sum);
numbers.b=5;
console.log(numbers.sum);
>>근데 number.b=5 에서 값이 변경될때 setter메소드가 없는데 어케 변경됐찌?
2. setter 메소드
: 프로퍼티에 값을 할당할 때 호출
const numbers={
_a:1,
_b:2,
sum:3,
calculate(){
console.log('calculate');
this.sum=this._a+this._b;
},
get a(){
return this._a;
},
get b(){
return this._b;
},
set a(value){
console.log('a가 바뀝니다.');
this._a=value;
this.calculate();
},
set b(value){
console.log('b가 바뀝니다.');
this._b=value;
this.calculate();
},
};
console.log(numbers.sum);
numbers.a=5; //5를 함수의 파라미터로 받아옴.
numbers.b=7;
numbers.a=9;
console.log(numbers.sum);
console.log(numbers.sum);
console.log(numbers.sum);
>잘모르겠다...
'JavaScript' 카테고리의 다른 글
[JavaScript] 자바스크립트 - 배열 내장 함수 (forEach, map, indexOf) (0) | 2021.03.08 |
---|---|
[JavaScript] 자바스크립트 - 객체 배열 (선언, push(), length 속성) (0) | 2021.03.07 |
[JavaScript] 반복문 연습문제 풀이 (0) | 2021.01.22 |
[JavaScript] while문 연습문제 풀이 (0) | 2021.01.22 |
[JavaScript] switch 연습문제 풀이 (0) | 2021.01.22 |