Javascript delete 引用类型对象
Javascript delete 引用类型对象
发布时间:2016-12-30 来源:查字典编辑
摘要:如下面例子:复制代码代码如下:vartestVar={a:{test:1}},test1={},test2={};test1.a=testV...

如下面例子:

复制代码 代码如下:

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教程学习
热门Javascript教程学习
编程开发子分类