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 相关文章推荐
Add a Table to a Word Document
Jun 15 Javascript
判断多个input type=file是否有已经选择好文件的代码
May 23 Javascript
jquery ajax post提交数据乱码
Nov 05 Javascript
ECMAScript 5中的属性描述符详解
Mar 02 Javascript
JavaScript在Android的WebView中parseInt函数转换不正确问题解决方法
Apr 25 Javascript
javascript轻量级库createjs使用Easel实现拖拽效果
Feb 19 Javascript
jQuery stop()用法实例详解
Jul 28 Javascript
给easyui的datebox控件添加清空按钮的实现方法
Nov 09 Javascript
微信小程序 支付功能实现PHP实例详解
May 12 Javascript
详解微信小程序Page中data数据操作和函数调用
Sep 27 Javascript
jquery ajax异步提交表单数据的方法
Oct 27 jQuery
一篇文章学会Vue中间件管道
Jun 20 Vue.js
有效的捕获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
php object转数组示例
2014/01/15 PHP
百度ping方法使用示例 自动ping百度
2014/01/26 PHP
PHP中iconv函数知识汇总
2015/07/02 PHP
PHP实现搜索相似图片
2015/09/22 PHP
Laravel 5.5基于内置的Auth模块实现前后台登陆详解
2017/12/21 PHP
JSQL  一个 web DB 的封装
2010/05/05 Javascript
给ListBox添加双击事件示例代码
2013/12/02 Javascript
使用jQuery获得内容以及内容的属性
2015/02/26 Javascript
javascript点击按钮实现隐藏显示切换效果
2016/02/03 Javascript
详解webpack 如何集成第三方js库
2017/06/29 Javascript
swiper动态改变滑动内容的实现方法
2018/01/17 Javascript
Vue组件库发布到npm详解
2018/02/17 Javascript
jQuery实现点击旋转,再点击恢复初始状态动画效果示例
2018/12/11 jQuery
Vue实现拖放排序功能的实例代码
2019/07/08 Javascript
Vue中el-form标签中的自定义el-select下拉框标签功能
2020/04/20 Javascript
详解element-ui动态限定的日期范围选择器代码片段
2020/07/03 Javascript
js实现飞机大战游戏
2020/08/26 Javascript
JS画布动态实现黑客帝国背景效果
2020/11/08 Javascript
[01:48]帕吉至宝加入游戏,遗迹战场现“千劫神屠”
2018/04/07 DOTA
将Python中的数据存储到系统本地的简单方法
2015/04/11 Python
详解Python正则表达式re模块
2019/03/19 Python
Python中的几种矩阵乘法(小结)
2019/07/10 Python
Python3 实现减少可调用对象的参数个数
2019/12/20 Python
python 元组和列表的区别
2020/12/30 Python
Python监听键盘和鼠标事件的示例代码
2020/11/18 Python
100%植物性、有机、即食餐:Sakara Life
2018/10/25 全球购物
宝拉珍选英国官网:Paula’s Choice英国
2019/05/29 全球购物
美国折扣地毯销售网站:Rugs.com
2020/03/27 全球购物
索引覆盖(Index Covering)查询含义
2012/02/18 面试题
个人自荐书
2013/12/20 职场文书
食品工程专业求职信
2014/06/15 职场文书
合同权益转让协议书模板
2014/11/18 职场文书
软件项目经理岗位职责
2015/04/01 职场文书
2015年办公室个人工作总结
2015/04/20 职场文书
详解Nginx 被动检查服务器的存活状态
2021/10/16 Servers
tomcat下部署jenkins的方法
2022/05/06 Servers