标签:
代码1:
var a=3.14;
var b=a;
a=4;
alert(b);
代码2
var a=[1,2,3];
var b=a;
a[0]=99;
alert(b);
请问为什么代码1显示的是3.14 ,为什么a的值并没有改变呢?明明在执行了第二行代码之后又给a重新赋值了。难道是因为第一行给a赋的值是基础类型的数值 不能被改变么?
那为什么代码2 显示的值是99,2,3,为什么a的值变了 ,是因为数组是引用类型的,引用类型没有固定大小 ,它并不能真正赋值给谁,而只是赋值给了b一个引用的形式、告诉变量b哪里可以找到它,是这样么?引用类型的值就可以变 基本类型的就不能变么?
谁能给我一个通俗易懂的解释呀 ! 谢谢了
标签:
原文地址:http://www.cnblogs.com/maruco2020/p/4485828.html