- 场景:赋值语句中的区别
2-1-1 基本类型:只传值
var a = 10;
var b = a;
console.log(b);
b = 20;
console.log(a);
2-1-2 引用类型:既传值也传址
``` // 过程 1.如果声明一个引用数据类型,那么占了两块内存空间 变量存在栈中 生成的实际对象存在堆内存中 栈内存中的变量存的是一个引用(指针,地址的值),指向堆内存中的实际对象
2.发生了赋值运算,实际上将地址的值赋予了sum, 那么这个指针也是指向堆内存中的同一个对象
```javascript
var obj = {name:"lisi"}
var str = obj //引用类型赋值计算的时候传递的是引用或者说指针
console.log(str);
str.age = 18;
console.log(obj);