특수 getter/setter를 사용하여 개체의 속성 변경 내용을 가로 채고 있으며 현재 일반 정의 된 모든 속성에 대해 잘 작동합니다. 그러나 내가 HTMLInputElement.value
또는 Array.length
과 같은 기본 제공 속성에 동일한 아이디어를 사용할 수 있다면 은 이겠지만, 불행히도이 이름은 구성 할 수없는 것으로 정의되어 있으므로 getter/setter를 사용하여 다시 정의 할 때 오류가 발생합니다.네이티브 구성 할 수없는 속성에 JavaScript getter/setter 추가
내부 작동을 중단시키지 않고 강제로 재 정의 할 수있는 (신뢰할 수있는) 해킹이 있는지 궁금합니다.
그렇지 않은 경우, 네이티브 속성에 매핑되고 대신 사용되는 모든 속성에 대한 대체 속성을 정의해야 할 수도 있습니다.하지만 그렇게 이상적이지는 않습니다. 어떤 식 으로든 좋은 연습이 아니라 당신이 정말로 필요하다면, 그 기능이 너무 프로토 타입 수준에 정의 된
네, 정확히, 그들은 당신이 그들의 정의를 변경할 수 없습니다 의미 unconfigurable로 정의하고 있습니다. 주위에 방법이 있다면 단지 궁금했다. – devios1
[] .length는 함수가 아닌 * 함수입니다. – Michael
예, 읽기 전용이 아닌 경우이를 다시 작성할 수 있습니다. –