>  기사  >  웹 프론트엔드  >  JavaScript delete attribute_javascript 사용 팁

JavaScript delete attribute_javascript 사용 팁

WBOY
WBOY원래의
2016-05-16 18:45:141134검색

delete는 객체의 속성을 삭제하는 것입니다. 예를 들어 객체의 경우
var obj = {key:5};
delete obj.key는 객체의 키 속성을 삭제하는 것입니다. , 그러나 객체의 프로토타입일 때 이 속성이 객체에도 존재한다는 점은 주목할 가치가 있습니다.

코드 복사 코드는 다음과 같습니다.

var A = function(){};
A.prototype.testMe = true;
var a = new A();//프로토타입 속성 재정의
a.testMe =
if(a.testMe){
/ / 일부 키 코드...
// ....
//이 속성 삭제
delete a.testMe;
//두 번째 단락 ---- -- --------
// 다른 모듈에서
if(a.testMe){
// 일부 키 코드. .
// ....
}


두 번째 단락은 삭제된 후에 더 이상 존재하지 않는다고 생각하지 마세요. .testMe 정의되지 않은 경우 false입니다. 실제로 프로토타입 액세스를 통해 여전히 존재하며
주의를 기울이지 않으면 여기에 속았습니다!
//첨부:
프로토타입 체인을 포함하여 객체에 특정 속성이 있는지 감지합니다.
if ('attrName' in obj)...
객체에 특정 속성이 있는지 감지합니다. 객체 자체에 속하며 비프로토타입 체인:
obj.hasOwnProperty('attrName')
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.