JavaScript delete 属性的使用


Posted in Javascript onOctober 08, 2009

delete 是删除对象的一个属性,例如对于一个对象,
var obj = {key:5};
delete obj.key就是删除该对象的key属性,这个没什么问题,但当对象的原型prototype对象也存在该属性时,就值得注意了。

var A = function(){}; 
A.prototype.testMe = true; 
var a = new A(); 
//覆盖原型属性 
a.testMe = true; 
if(a.testMe){ 
// 一些关键代码... 
// .... 
//删除这属性 
delete a.testMe; 
} 
//第二段 --------------------------- 
// 在其它模块中 
if(a.testMe){ 
// 一些关键代码... 
// .... 
}

第二段是值得注意的,不要以为a中testMe已尼删除了就不存在了,所以a.testMe就为undefined,即为假,其实它通过原型访问还是存在的,还是true!
这里不留神就中招了。
//附:
检测对象是否存在某属性, 包括原型链的:
if ('attrName' in obj)…
检测对象是否存在某属性,是对象本身的,而非原型链的:
obj.hasOwnProperty('attrName')
Javascript 相关文章推荐
js在数组中删除重复的元素自保留一个(两种实现思路)
Aug 22 Javascript
JavaScript中最简洁的编码html字符串的方法
Oct 11 Javascript
js实现文字跟随鼠标移动而移动的方法
Feb 28 Javascript
Bootstrap幻灯片轮播图支持触屏左右手势滑动的实现方法
Oct 13 Javascript
JavaScript计算值然后把值嵌入到html中的实现方法
Oct 29 Javascript
微信小程序商城项目之商品属性分类(4)
Apr 17 Javascript
js实现单张图片平移切换效果
Oct 11 Javascript
javaScript canvas实现(画笔大小 颜色 橡皮的实例)
Nov 28 Javascript
关于vue中的ajax请求和axios包问题
Apr 19 Javascript
js+html5实现手机九宫格密码解锁功能
Jul 30 Javascript
微信小程序实现带缩略图轮播效果
Nov 04 Javascript
使用vue-cli4.0快速搭建一个项目的方法步骤
Dec 04 Javascript
有效的捕获JavaScript焦点的方法小结
Oct 08 #Javascript
Javascript isArray 数组类型检测函数
Oct 08 #Javascript
JavaScript 监听textarea中按键事件
Oct 08 #Javascript
jquery 最简单的属性菜单
Oct 08 #Javascript
Javascript 日期处理之时区问题
Oct 08 #Javascript
学习ExtJS table布局
Oct 08 #Javascript
学习ExtJS accordion布局
Oct 08 #Javascript
You might like
用文本作数据处理
2006/10/09 PHP
PHP 函数执行效率的小比较
2010/10/17 PHP
PHP 日,周,月点击排行统计
2012/01/11 PHP
PHP __autoload函数(自动载入类文件)的使用方法
2012/02/04 PHP
关于PHP语言构造器介绍
2013/07/08 PHP
php中替换字符串中的空格为逗号','的方法
2014/06/09 PHP
php编写的抽奖程序中奖概率算法
2015/05/14 PHP
thinkPHP统计排行与分页显示功能示例
2016/12/02 PHP
PHP基于socket实现客户端和服务端通讯功能
2017/07/13 PHP
Jquery弹出窗口插件 LeanModal的使用方法
2012/03/10 Javascript
ExtJS4利根据登录后不同的角色分配不同的树形菜单
2014/05/02 Javascript
解决JS请求服务器gbk文件乱码的问题
2015/10/16 Javascript
AngularJS基础 ng-readonly 指令简单示例
2016/08/02 Javascript
完美解决node.js中使用https请求报CERT_UNTRUSTED的问题
2017/01/08 Javascript
ES6中module模块化开发实例浅析
2017/04/06 Javascript
微信小程序之网络请求简单封装实例详解
2017/06/28 Javascript
在iframe中使bootstrap的模态框在父页面弹出问题
2017/08/07 Javascript
angularJs中orderBy筛选以及filter过滤数据的方法
2018/09/30 Javascript
js中位运算的运用实例分析
2018/12/11 Javascript
编写更好的JavaScript条件式和匹配条件的技巧(小结)
2019/06/27 Javascript
vue3+typeScript穿梭框的实现示例
2020/12/29 Vue.js
Python通过递归遍历出集合中所有元素的方法
2015/02/25 Python
在SAE上部署Python的Django框架的一些问题汇总
2015/05/30 Python
获取python文件扩展名和文件名方法
2018/02/02 Python
pyqt5与matplotlib的完美结合实例
2019/06/21 Python
python全栈知识点总结
2019/07/01 Python
在pytorch中查看可训练参数的例子
2019/08/18 Python
浅谈python出错时traceback的解读
2020/07/15 Python
python实现录制全屏和选择区域录屏功能
2021/02/05 Python
CSS3制作彩色进度条样式的代码示例分享
2016/06/23 HTML / CSS
Lentiamo比利时:便宜的隐形眼镜
2020/02/14 全球购物
学生打架检讨书1000字
2014/01/16 职场文书
十八届三中全会宣传方案
2014/02/21 职场文书
关于安全的广播稿
2014/10/23 职场文书
2014年综治维稳工作总结
2014/11/17 职场文书
jquery插件实现代码雨特效
2021/04/24 jQuery