共计 507 个字符,预计需要花费 2 分钟才能阅读完成。
变量的两种类型
根本类型: undefined、Null、Boolean、Number、String 五种 (简略的数据段);
援用类型: object (由多个值形成), 也就是咱们说的“ 对象 ”
从复制后果看两种变量的个性
根本类型变量的复制 : 将前一变量赋值给后一变量时, 只是将前一个变量的值赋给后一个变量, 之后两个变量从新赋值互不影响, 如下:
var a=3
var b=a
b=4
console.log(a)// b 的从新赋值不影响 a, 此时 a 还是原值 3
援用类型变量的复制 : 将前一变量赋值给后一变量时, 是将前一个变量的指针给后一个变量, 两个变量用的是同一个指针, 指向的是 同一个地址 , 是 同一个值 。无论哪个变量扭转这 同一个值, 另一变量的指针的值跟着扭转, 两个变量从新赋值相互影响, 如下:
var a={d:3}
var b=a
b.d=4
console.log(a.d)// 给 b.d 从新赋值为 4, 因 a.d 指针也指响这个地址,所以 a.d 的值也是 4
由上可知:根本类型变量复制的是变量的正本,而援用类型变量复制的是指针
变量的定义(宣告)和赋值
函数中形参和局部变量同名
ps: 在咱们本人写代码中,个别不会做这样的蠢事。
js 对形参在变量对象中是如何保留的呢,请看标准:
正文完