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 相关文章推荐
extjs3 combobox取value和text案例详解
Feb 06 Javascript
jquery 动态创建元素的方式介绍及应用
Apr 21 Javascript
JS实现拖动示例代码
Nov 01 Javascript
使用JavaScript获取地址栏参数的方法
Dec 19 Javascript
AngularJs根据访问的页面动态加载Controller的解决方案
Feb 04 Javascript
解决JS组件bootstrap table分页实现过程中遇到的问题
Apr 21 Javascript
深入理解Node.js的HTTP模块
Oct 12 Javascript
jQuery Ajax前后端使用JSON进行交互示例
Mar 17 Javascript
JS简单验证上传文件类型的方法
Apr 17 Javascript
Angularjs中ng-repeat的简单实例
Aug 25 Javascript
VUE2.0+ElementUI2.0表格el-table循环动态列渲染的写法详解
Nov 30 Javascript
vue项目中仿element-ui弹框效果的实例代码
Apr 22 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
CI框架自动加载session出现报错的解决办法
2014/06/17 PHP
简单分析ucenter 会员同步登录通信原理
2014/08/25 PHP
PHP实现CSV文件的导入和导出类
2015/03/24 PHP
php原生数据库分页的代码实例
2019/02/18 PHP
精解window.setTimeout()&window.setInterval()使用方式与参数传递问题!
2007/11/23 Javascript
提高网站性能之 如何对待JavaScript
2009/10/31 Javascript
JQury slideToggle闪烁问题及解决办法
2011/07/05 Javascript
EasyUI实现第二层弹出框的方法
2015/03/01 Javascript
深入探讨javascript中的数据类型
2015/03/04 Javascript
javascript跨域原因以及解决方案分享
2015/04/08 Javascript
JS实现动态增加和删除li标签行的实例代码
2016/10/16 Javascript
JavaScript 字符串常用操作小结(非常实用)
2016/11/30 Javascript
jQuery实现 上升、下降、删除、添加一行代码
2017/03/06 Javascript
基于JavaScript实现类名的添加与移除
2017/04/23 Javascript
js自定义弹框插件的封装
2020/08/24 Javascript
微信小程序数据分析之自定义分析的实现
2018/08/17 Javascript
详解vue使用插槽分发内容slot的用法
2019/03/28 Javascript
Vue render函数实战之实现tabs选项卡组件
2019/04/22 Javascript
微信小程序云开发如何使用npm安装依赖
2019/05/18 Javascript
vue实现手机号码的校验实例代码(防抖函数的应用场景)
2019/09/05 Javascript
vue-cli4项目开启eslint保存时自动格式问题
2020/07/13 Javascript
python3编码问题汇总
2016/09/06 Python
Python pandas DataFrame操作的实现代码
2019/06/21 Python
Python线程障碍对象Barrier原理详解
2019/12/02 Python
Python如何使用OS模块调用cmd
2020/02/27 Python
pycharm 添加解释器的方法步骤
2020/08/31 Python
阿提哈德航空官方网站:Etihad Airways
2017/01/06 全球购物
Expedia英国:全球最大的在线旅游公司
2017/09/07 全球购物
自我鉴定书范文
2013/10/02 职场文书
校庆口号
2014/06/20 职场文书
运动会跳远广播稿5篇
2014/09/17 职场文书
初中重阳节活动总结
2015/05/05 职场文书
2015年大学学生会工作总结
2015/05/13 职场文书
白银帝国观后感
2015/06/17 职场文书
大学生社区义工服务心得体会
2016/01/22 职场文书
《中华上下五千年》读后感3篇
2019/11/29 职场文书