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 相关文章推荐
利用Ext Js生成动态树实例代码
Sep 08 Javascript
JS 两个字符串时间的天数差计算
Aug 25 Javascript
Ajax局部更新导致JS事件重复触发问题的解决方法
Oct 14 Javascript
jQuery Validate初步体验(一)
Dec 12 Javascript
Bootstrap网格系统详解
Apr 26 Javascript
JS作用域闭包、预解释和this关键字综合实例解析
Dec 16 Javascript
详解基于Angular4+ server render(服务端渲染)开发教程
Aug 28 Javascript
ionic2懒加载配置详解
Sep 01 Javascript
微信小程序实现自上而下字幕滚动
Jul 14 Javascript
详解如何在vue项目中使用lodop打印插件
Sep 27 Javascript
微信小程序实现上拉加载功能
Nov 20 Javascript
vant-ui AddressEdit地址编辑和van-area的用法说明
Nov 03 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
深入HTTP响应状态码速查表的详解
2013/06/07 PHP
深入PHP许愿墙模块功能分析
2013/06/25 PHP
PHP连接SQLServer2005方法及代码
2013/12/26 PHP
php版微信开发之接收消息,自动判断及回复相应消息的方法
2016/09/23 PHP
thinkPHP中volist标签用法示例
2016/12/06 PHP
使用PHPExcel实现数据批量导出为excel表格的方法(必看)
2017/06/09 PHP
php intval函数用法总结
2019/04/14 PHP
jQuery EasyUI API 中文文档 - Spinner微调器使用
2011/10/21 Javascript
Js+Flash实现访问剪切板操作
2012/11/20 Javascript
jQuery支持动态参数将函数绑定到事件上的方法
2015/03/17 Javascript
javascript简单实现滑动菜单效果的方法
2015/07/27 Javascript
JavaScript DOM节点操作方法总结
2016/08/23 Javascript
js利用clipboardData实现截屏粘贴功能
2016/10/12 Javascript
jQuery右下角悬浮广告实例
2016/10/17 Javascript
纯JS实现轮播图
2017/02/22 Javascript
JavaScript html5利用FileReader实现上传功能
2020/03/27 Javascript
JS仿淘宝搜索框用户输入事件的实现
2017/06/19 Javascript
深入浅析var,let,const的异同点
2018/08/07 Javascript
jquery UI实现autocomplete在获取焦点时得到显示列表功能示例
2019/06/04 jQuery
JavaScript基于用户照片姓名生成海报
2020/05/29 Javascript
python杀死一个线程的方法
2015/09/06 Python
基于Python实现一个简单的银行转账操作
2016/03/06 Python
win10系统中安装scrapy-1.1
2016/07/03 Python
python使用threading获取线程函数返回值的实现方法
2017/11/15 Python
python与sqlite3实现解密chrome cookie实例代码
2018/01/20 Python
Python+pandas计算数据相关系数的实例
2018/07/03 Python
解决Pytorch 训练与测试时爆显存(out of memory)的问题
2019/08/20 Python
python GUI库图形界面开发之PyQt5窗口背景与不规则窗口实例
2020/02/25 Python
python super()函数的基本使用
2020/09/10 Python
python 利用zmail库发送邮件
2020/09/11 Python
Jupyter Notebook 安装配置与使用详解
2021/01/06 Python
会计专业应届生求职信
2013/11/24 职场文书
2014年四风个人对照检查及整改措施
2014/10/28 职场文书
先进个人事迹材料
2014/12/29 职场文书
一个都不能少观后感
2015/06/04 职场文书
MySQL GRANT用户授权的实现
2021/06/18 MySQL