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 檢測類型

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