目录

​​传值​​

​​什么是传值​​

​​ 例 ​​

​​传址​​

​​什么是传址​​

​​例 ​​


传值

什么是传值

let a = 1;
let b = a;
console.log(a, b); //1 1

[JS ES6]传值和传址_数组

 

传值是获取一份儿相同的值,并自身重新开一份儿属于自己的内存地址,两个变量是互相独立的并不会互相影响。

[JS ES6]传值和传址_数组_02

 例 

let a = 1;
let b = a;
b = 2;
console.log(a);
console.log(b);

[JS ES6]传值和传址_内存地址_03

修改了b的值,a的值不会受到影响,这就是传值,两者是独立的存在,引用内存比较小的引用赋值一般都是传值。

传址

什么是传址

let a = {
name: "xiaoxie",
};
let b = a;
console.log(a, b);

 

[JS ES6]传值和传址_数组_04

 

传值是获取一份儿相同的值,不会自身重新开一份儿属于自己的内存地址,两个变量是一个内存地址,会互相影响。

[JS ES6]传值和传址_内存地址_05

例 

let a = {
name: "xiaoxie",
};
let b = a;
b.name = "xiaoliu"
console.log(a, b);

[JS ES6]传值和传址_前端_06

 修改了b.name就是修改了a.name的值,两者使用同一个内存地址,一般引用占用内存较大的变量时,会传址,比如对象和数组。