js数据类型概念(内存中的存储)通过案例来理解
JS分为基本数据类型和引用数据类型
基本数据类型:number:数字型 string:字符串型 boolean:布尔型 undefind:未定义
null:空 symbol型 NaN:不是数字
引用数据类型:数组:Array 函数:Function 对象:Object
数据类型大致可以分成两类来进行存储
第一题:
代码:
let a={
name:'张三',
age:18
}
let b=a
console.log(a.name);//第一个console
b.name='tom';
console.log(a.name);//第二个console
console.log(b.name);//第三个console
请问这三个console.log分别输出的是什么?
答案:
为什么改变了b.name后,a也会改变呢,因为他们指向同一个内存地址,一个改变都会改变
第二题:
let a={
name:'张三',
age:18
}
function change(o){
o.age=24;
o={
name:'cat',
age:26
}
return o;
}
let b=change(a)
console.log(b.age);//第一个console
console.log(b);//第二个console
console.log(a.age);//第三个console
console.log(a);//第四个console
结果为;
这里的function和return带来了不一样的东西,函数传参进来的o,传递的是对象在堆中的内存地址,return把o变成了另一个内存地址,就不在a所在的堆地址了,只有前面的o.age=24会作用给a
原文地址:https://blog.csdn.net/yyyyyyysc/article/details/143951785
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!