JavaScript 刪除屬性
■知識點
delete運算符能夠刪除指定對象的屬性或者數(shù)組的元素,如果刪除操作成功,則返回 true, 否則返回 false。
■實例設(shè)計
下面的代碼使用delete運算符刪除對象a的屬性x。
var a ={ //定義對象a
x : 1, //定義對象成員
y : 2 //定義對象成員
};
console.log(a.x); //調(diào)用對象成員,返回1
console.log( delete a.x); //刪除對象成員x成功,返回true
console.log(a.x); //返回undefined,沒有找到該對象成員
如果刪除不存在的對象成員,或者非對象成員、數(shù)組元素、變量時,則返回true,所以使用delete運算符時,要注意區(qū)分成功刪除與無效操作。
var a ={}; //定義對象a
console.log(delete a); //返回false,說明不允許刪除
console.log(delete a.z);//返回true, 說明不存在該屬性
console.log(delete b); //返回true,說明不存在該變量
下面的代碼使用delete運算符,配合in運算符,實現(xiàn)對數(shù)組成員執(zhí)行檢測、插入、刪除或更新操作。
var a =[]; //定義數(shù)組對象
if("x" in a) //如果對象a中存在x
delete a["x"]; //則刪除成員x
else //如果不存在成員x
a["x"] = true; //則插入成員x,并為其賦值true
console.log(a.x); //返回true。查看成員x的值
if(delete a["x"]) //如果刪除成員x成功
a["x"] = false; //更新成員x的值為false
console.log(a,x); //返回false。查看成員x的值
點擊加載更多評論>>