js基本数组类型和引用数据类型如何存储

一、基本数据类型

基本数据类型的存储:在栈内存中开辟一块空间存储它的变量名和值

当你修改a或者是b的值时,对另外一个变量没有影响,如下图:

var a = 123;
var b = a;
console.log(a);//123
console.log(b);//123
a = 456;
console.log(a);//456
console.log(b);//123

 

二、引用数据类型

引用数据类型的存储:首先在栈内存中开辟一块空间存储变量名和值,在堆内存中开辟一块空间存储引用数据类型的内容,而栈内存中的值是一个地址,指向堆内存中引用数据类型所在的地方。

所以,当我们创建一个变量a,并且将引用数据类型赋值给他,再将a赋值给b,相当于将该引用数据类型在堆内存中的地址赋值给了b,当执行a.name = 'zhangsan'之后,堆内存中的引用数据类型发生了改变,但是栈内存中a,b的地址指向没有变,所以a和b打印出来的结果都为'zhangsan'

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


'

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值