/**
* 基本数据类型
* Undefined Null String Number Boolean
*
* 引用类型
* Object
*
* JS中变量都是存储在栈内存中
* 基本数据类型是直接存储在栈内存中 值与值之间是独立的
*
* 对象类型是保存在队内存中的,每创建一个新的对象,就会在堆内存中开辟一个新空间
* 而变量保存的是对象的内存地址(对象的引用)
*/
var a = 123;
var b = a;
console.log(a) //123
console.log(b) //123
a = 124;
console.log(a)//124
console.log(b) //123
var mes;
console.log(mes == undefined)
var obj = new Object();
obj.name ='张三';
var obj2 = obj;
console.log(obj.name);
console.log(obj2.name);
obj = null; //obj清空相当于把引用删除
// console.log(obj.name);undefined
console.log(obj2.name);
栈内存
var a = 123;
var b = a;
--------------------栈内存---------------
变量 | 值 |
---|---|
a | 123 |
– | – |
b | 123 |
var obj = new Object();
obj.name =‘张三’;
var obj2 = obj;
console.log(obj.name);
console.log(obj2.name);
总结:
基本类型操作的是值
引用类型操作的是地址