美文网首页让前端飞
JavaScript中的引用与复制

JavaScript中的引用与复制

作者: DouQing | 来源:发表于2017-03-29 16:55 被阅读0次

我们都知道javascript有五种基本数据类型,分别是Null,String,Boolean,Number,Undefined。
基本类型为字面量为null,string,boolean,number,undefined的变量。

复制

复制针对的是基本类型。
基本数据类型存在栈中有固定大小,复制会产生一个副本,只见没有关系。

var a = 12;
var b = a;
console.log(a); //12
console.log(b);  //12
b = 10;
console.log(a);  //12
console.log(b);  //10

从例子中发现复制会产生一个原有数据的副本,在新创建的内存空间中,互不影响。

引用

引用针对的是对象,就是通过new创建出来的对象,存储在堆中。

var a = {name:'Joho'}
var b = a;
console.log(a.name);  //Joho
console.log(b.name);  //Joho
b.name = 'Tom';
console.log(a.name);  //Tom
console.log(b.name);  //Tom

从例子发现当var b = a时,b和a指向了同一块内存,对b进行修改的a也会进行改变,当然若对a进行修改b肯定也会相应的改变。

相关文章

网友评论

    本文标题:JavaScript中的引用与复制

    本文链接:https://www.haomeiwen.com/subject/kbfyottx.html