JavaScript数据类型包括基本数据类型和引用数据类型。
基本数据类型:未定义(Undefined)、空(Null)、布尔值(Boolean)、数字(Number)、字符串(String)
引用数据类型:对象(Object)、数组(Array)、函数(Function)
两者区别的话我们先上代码:
var a = 1;
var b = a;
b = 2;
console.log(a) //a = 1
这里我们可以看到,拷贝了一份a的值(基本数据类型)赋给了b,然后修改b的值,a并没有发生变化。
var a = {
name:"小明"
};
var b = a;
b.name = "小张";
console.log(a) //a = {name:"小张"}
这里我们可以看到,拷贝了一份a的值(引用数据类型)赋给了b,然后修改b的值,a发生了变化。
基本数据类型的变量和值是存在栈内存里面的。
基本数据类型
引用数据类型的变量虽然也是存在栈内存里面的,但是值却是存在堆内存里面的,栈内存里面还存了连接堆内存值的地址。
引用数据类型