JavaScript delete 屬性的使用
更新時間:2009年10月08日 18:04:34 作者:
JavaScript對象數(shù)據(jù)結(jié)構(gòu)基本形式:{ key : value},其中key:value就為對象的一個屬性,key作為屬性名稱,value為屬性值,這值可以是任何JavaScript數(shù)據(jù)類型。
delete 是刪除對象的一個屬性,例如對于一個對象,
var obj = {key:5};
delete obj.key就是刪除該對象的key屬性,這個沒什么問題,但當(dāng)對象的原型prototype對象也存在該屬性時,就值得注意了。
var A = function(){};
A.prototype.testMe = true;
var a = new A();
//覆蓋原型屬性
a.testMe = true;
if(a.testMe){
// 一些關(guān)鍵代碼...
// ....
//刪除這屬性
delete a.testMe;
}
//第二段 ---------------------------
// 在其它模塊中
if(a.testMe){
// 一些關(guān)鍵代碼...
// ....
}
第二段是值得注意的,不要以為a中testMe已尼刪除了就不存在了,所以a.testMe就為undefined,即為假,其實它通過原型訪問還是存在的,還是true!
這里不留神就中招了。
//附:
檢測對象是否存在某屬性, 包括原型鏈的:
if ('attrName' in obj)…
檢測對象是否存在某屬性,是對象本身的,而非原型鏈的:
obj.hasOwnProperty('attrName')
var obj = {key:5};
delete obj.key就是刪除該對象的key屬性,這個沒什么問題,但當(dāng)對象的原型prototype對象也存在該屬性時,就值得注意了。
復(fù)制代碼 代碼如下:
var A = function(){};
A.prototype.testMe = true;
var a = new A();
//覆蓋原型屬性
a.testMe = true;
if(a.testMe){
// 一些關(guān)鍵代碼...
// ....
//刪除這屬性
delete a.testMe;
}
//第二段 ---------------------------
// 在其它模塊中
if(a.testMe){
// 一些關(guān)鍵代碼...
// ....
}
第二段是值得注意的,不要以為a中testMe已尼刪除了就不存在了,所以a.testMe就為undefined,即為假,其實它通過原型訪問還是存在的,還是true!
這里不留神就中招了。
//附:
檢測對象是否存在某屬性, 包括原型鏈的:
if ('attrName' in obj)…
檢測對象是否存在某屬性,是對象本身的,而非原型鏈的:
obj.hasOwnProperty('attrName')
您可能感興趣的文章:
- JavaScript中詭異的delete操作符
- js delete 用法(刪除對象屬性及變量)
- Javascript中的delete介紹
- javascript delete 使用示例代碼
- JavaScript從數(shù)組中刪除指定值元素的方法
- Javascript根據(jù)指定下標(biāo)或?qū)ο髣h除數(shù)組元素
- js 刪除數(shù)組的幾種方法小結(jié)
- js刪除數(shù)組元素、清空數(shù)組的簡單方法(必看)
- js刪除Array數(shù)組中指定元素的兩種方法
- 基于JavaScript實現(xiàn)移除(刪除)數(shù)組中指定元素
- Javascript remove 自定義數(shù)組刪除方法
- javascript中刪除指定數(shù)組中指定的元素的代碼
- JavaScript使用delete刪除數(shù)組元素用法示例【數(shù)組長度不變】
相關(guān)文章
javascript實現(xiàn)帶節(jié)日和農(nóng)歷的日歷特效
這篇文章主要介紹了javascript實現(xiàn)帶節(jié)日和農(nóng)歷的日歷特效,效果十分棒,需要的朋友可以參考下2015-02-02
javascript實現(xiàn)Table間隔色以及選擇高亮(和動態(tài)切換數(shù)據(jù))的方法
這篇文章主要介紹了javascript實現(xiàn)Table間隔色以及選擇高亮(和動態(tài)切換數(shù)據(jù))的方法,涉及javascript表格操作及按鈕實現(xiàn)表格切換的技巧,需要的朋友可以參考下2015-05-05
javascript實現(xiàn)原生ajax的幾種方法介紹
項目中不需要加載jquery這種龐大的js插件要使用到ajax這種功能該如何辦呢?下面和大家分享幾種利用javascript實現(xiàn)原生ajax的方法2013-09-09
創(chuàng)建echart多個聯(lián)動的示例代碼
這篇文章主要介紹了創(chuàng)建echart多個聯(lián)動的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-11-11

