javascript 高级程序设计(二)

第 4 章 变量、作用域和内存问题
4.1 基本类型和引用类型的值
4.1.1 动态的属性
定义基本类型值和引用类型值的方式是类似的:创建一个变量并为该变量赋值。

var person = new Object();
person.name = "Nicholas";
alert(person.name); //"Nicholas" 

但是,我们不能给基本类型的值添加属性,尽管这样做不会导致任何错误。比如:

var name = "Nicholas";
name.age = 27;
alert(name.age); //undefined

为字符串 name 定义了一个名为 age 的属性,为该属性赋值 27。但在下一
行访问这个属性时,发现该属性不见了。这说明只能给引用类型值动态地添加属性,以便将来使用。

4.1.2 复制变量值
从一个变量向另一个变量复制基本类型的值,会在变量对象上创建一个新值,然后把该值复制到为新变量分配的位置上。

var num1 = 5;
var num2 = num1; 

4.1.3 传递参数
在向参数传递基本类型的值时,被传递的值会被复制给一个局部变量(即命名参数,或者用ECMAScript 的概念来说,就是 arguments 对象中的一个元素)。

function addTen(num) {
 num += 10;
 return num;
} 
var count = 20;
var result = addTen(count);
alert(count); //20,没有变化
alert(result); //30 

4.1.4 检测类型

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章