• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    미해결

set() 트랩 준수사항에 대해서 질문입니다!

22.03.07 22:30 작성 조회수 114

0

// 프로퍼티 값 설정 불가
const target = {};
Object.defineProperty(target, "point", {
	value: 500, writable: false
});
const handler = {
	set(target, key, value, receiver) {
		target[key] = value + 200;
	}
};
const obj = new Proxy(target, handler);
console.log(obj.point = 100); // 100
console.log(obj.point); // 500

 

11분 10초 쯤 설명에서 console.log(obj.point = 100); 를 실행하면 값 그대로 100이 반환된다고 설명하셨는데 이 부분이 이해가지 않아서 여쭤보고 싶습니다!


한 번 엔진이 어떻게 돌아가는지 봐봤는데 value 값으로 100이 들어갔지만 왜 내부 메소드 [[Set]]이 실행됐는데 100이 반환됐는지 잘 이해가 가지 않네요ㅠㅠ set() 트랩이 호출되고 실행이 끝나면 value 값을 반환하는 건가요? 처음 set() 트랩 설명에서는 반환에서 처리 성공하면 true, 실패하면 false라고 나와있었거든요ㅠㅠ

 

답변 0

답변을 작성해보세요.

답변을 기다리고 있는 질문이에요.
첫번째 답변을 남겨보세요!