Javascript delete 引用类型对象


Posted in Javascript onNovember 01, 2013

如下面例子:

var testVar = {
            a : {
                test : 1
            }
        },
            test1 = {},
            test2 = {};        test1.a = testVar.a;
        test2.a = testVar.a;
/*
        delete test1.a;
        console.log(test1.a); // undefined
        console.log(test2.a); // Object {test: 1}
        console.log(testVar.a); // Object {test: 1}
*/
        delete testVar.a;
        console.log(test1.a); // Object {test: 1}
        console.log(test2.a); // Object {test: 1}
        console.log(testVar.a); // undefined

通过测试可以看出,javascript的delete删除的对象如果是一个引用类型,那它删除的不是引用的对象,而是指向该引用对象的指针。因此,即使 delete testVar.a ,test1.a指向的对象仍然没有删除。

更多关于javascript delete关键字的原理,推荐:

http://perfectionkills.com/understanding-delete/

翻译版本:

http://www.ituring.com.cn/article/7620

Javascript 相关文章推荐
js分解url参数(面向对象-极简主义法应用)
Aug 09 Javascript
ajaxFileUpload.js插件支持多文件上传的方法
Sep 02 Javascript
jQuery实现的图文高亮滚动切换特效实例
Aug 10 Javascript
基于jquery实现select选择框内容左右移动添加删除代码分享
Aug 25 Javascript
在Javascript操作JSON对象,增加 删除 修改的简单实现
Jun 02 Javascript
AngularJs bootstrap搭载前台框架——js控制部分
Sep 01 Javascript
在 Angular2 中实现自定义校验指令(确认密码)的方法
Jan 23 Javascript
thinkjs之页面跳转同步异步操作
Feb 05 Javascript
简易Vue评论框架的实现(父组件的实现)
Jan 08 Javascript
Vue中mintui的field实现blur和focus事件的方法
Aug 25 Javascript
vue下拉菜单组件(含搜索)的实现代码
Nov 25 Javascript
原生js实现俄罗斯方块
Oct 20 Javascript
理解Javascript闭包
Nov 01 #Javascript
Javascript 命名空间模式
Nov 01 #Javascript
完美解决AJAX跨域问题
Nov 01 #Javascript
javascript中创建对象的几种方法总结
Nov 01 #Javascript
如何学习Javascript入门指导
Nov 01 #Javascript
js动态设置鼠标事件示例代码
Oct 30 #Javascript
获取非最后一列td值并将title设为该值的方法
Oct 30 #Javascript
You might like
1.PHP简介
2006/10/09 PHP
将数组写入txt文件 var_export
2009/04/21 PHP
PHP根据两点间的经纬度计算距离
2014/10/31 PHP
yii2.0数据库迁移教程【多个数据库同时同步数据】
2016/10/08 PHP
Thinkphp结合AJAX长轮询实现PC与APP推送详解
2017/07/31 PHP
用javascript实现的仿Flash广告图片轮换效果
2007/04/24 Javascript
js 浏览本地文件夹系统示例代码
2013/10/24 Javascript
获取中文字符串的实际长度代码
2014/06/05 Javascript
JavaScript设计模式之观察者模式(发布者-订阅者模式)
2014/09/24 Javascript
jQuery中end()方法用法实例
2015/01/08 Javascript
js树插件zTree获取所有选中节点数据的方法
2015/01/28 Javascript
js使用DOM操作实现简单留言板的方法
2015/04/10 Javascript
jq checkbox 的全选并ajax传参的实例
2017/04/01 Javascript
JS实现禁止高频率连续点击的方法【基于ES6语法】
2017/04/25 Javascript
微信小程序实现滑动删除效果
2017/05/19 Javascript
常见的浏览器Hack技巧整理
2017/06/29 Javascript
react router4+redux实现路由权限控制的方法
2018/05/03 Javascript
Vue.js 实现微信公众号菜单编辑器功能(二)
2018/05/08 Javascript
解决vant中 tab栏遇到的坑 van-tabs
2020/11/04 Javascript
Python中实现远程调用(RPC、RMI)简单例子
2014/04/28 Python
Python 正则表达式实现计算器功能
2017/04/29 Python
python实现音乐下载器
2018/04/15 Python
详解Python3 对象组合zip()和回退方式*zip
2019/05/15 Python
django 连接数据库 sqlite的例子
2019/08/14 Python
对python中arange()和linspace()的区别说明
2020/05/03 Python
HTML5中的Article和Section元素认识及使用
2013/03/22 HTML / CSS
浅谈amaze-ui中datepicker和datetimepicker注意的几点
2020/08/21 HTML / CSS
Ann Taylor官方网站:美国最大的女性产品制造商之一
2016/09/14 全球购物
Hanro官网:奢华男士和女士内衣、睡衣和家居服
2018/10/25 全球购物
物流专业大学应届生求职信
2013/11/03 职场文书
大一新生军训时的自我评价分享
2013/12/05 职场文书
2014年班主任自我评价范文
2014/04/23 职场文书
2015毕业生简历自我评价
2015/03/02 职场文书
2016年情人节广告语
2016/01/28 职场文书
python tkinter实现定时关机
2021/04/21 Python
vue实现水波涟漪效果的点击反馈指令
2021/05/31 Vue.js