개체에 대한 사용자 지정 속성을 만들지 않는 방법이 필요합니다.
이것은 내 코드입니다.
object_to_instance = function () {
this["elem1"] = 0;
this["elem2"] = 0;
// ....
this["elem_n"] = 0;
}
my_obj = new object_to_instance();
my_obj.elem1 =7;
내가 원하는 것은 그것을 피하는 방법입니다.
my_obj.ele2 = 8 // (The m of elem2 is missing)
가능할 수 있습니다.
이제 ele2 속성이 있지만 오류를 원합니다!
또한 사용 strict mode
은 도움이되지 않습니다.
어떤 아이디어?
당신은 아마 원할 것입니다 Object.preventExtensions
:
이
Object.preventExtensions()
메서드는 객체에 새 속성이 추가되는 것을 방지합니다 (즉, 객체에 대한 향후 확장을 방지 함).
Object.preventExtensions(my_obj)
속성을 잠그고 싶을 때마다 호출하기 만하면 됩니다.
과 달리 Object.seal
기존 속성을 삭제할 수 있습니다.
이것은 최신 브라우저에서만 작동합니다 . 특히 IE 8 이하에서는 지원하지 않습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다