关于引用变量的赋值问题
###2个引用变量指向同一个对象, 通过一个引用变量修改对象内部数据, 另一个引用变量也看得见
* 例如:
* var a = {
* n: 123
* }
* var b = a;
* a.n = 456;
* console.log(b.n); //456
工作图例:
###2个引用变量指向同一个对象,让一个引用变量指向另一个对象, 另一个引用变量还是指向原来的对象
* var a = { * n: 123 * } * var b = a; * a = { * n: 456 * } * console.log(b.n); //123
工作图例:
注意: 第二种情况创建新的a,地址值改变,但是b还是指向原来的地址值
关于值的传递问题
- 调用函数传递变量参数时候,时值传递还是引用传递?
- 两种说法:
- 值传递的对象的引用,引用传递
- 只有值传递,没有引用传递。传递的都是变量的值,这个值可能为基本的数据,也可以值地址数据
- 例如
var a = 123; test(a); //值传递 a = {}; test(a); //值传递,地址值 //引用传递
- 两种说法: