js 值類型和引用類型

本文轉載自:https://www.cnblogs.com/lxq1990/archive/2012/11/04/2754226.html 作者:lxq1990 轉載請註明該聲明。

JavaScript值類型和引用類型有哪些

(1)值類型:數值、布爾值、null、undefined。

(2)引用類型:對象、數組、函數。

四、如何理解值類型和引用類型及舉例

我們可以用“連鎖店”和“連鎖店鑰匙”來理解,不知道以下比喻合不合適,^-^。

(1)值類型理解:變量的交換等於在一個新的地方按照連鎖店的規範標準(統一店面理解爲相同的變量內容)新開一個分店,這樣新開的店與其它舊店互不相關、各自運營。

【值類型例子】

複製代碼 代碼如下:

function chainStore()
{
var store1='Nike China';
var store2=store1;
store1='Nike U.S.A.';
alert(store2); //Nike China
}
chainStore();
//把一個值類型(也可以叫基本類型)store2傳遞給另一個變量(賦值)時,其實是分配了一塊新的內存空間,因此改變store1的值對store2沒有任何影響,因爲它不像引用類型,變量的交換其實是交換了指像同一個內容的地址。


(2)引用類型理解:變量的交換等於把現有一間店的鑰匙(變量引用地址)複製一把給了另外一個老闆,此時兩個老闆同時管理一間店,兩個老闆的行爲都有可能對一間店的運營造成影響。

【引用類型例子】

複製代碼 代碼如下:

function chainStore()
{
var store1=['Nike China'];
var store2=store1;
alert(store2[0]); //Nike China
store1[0]='Nike U.S.A.';
alert(store2[0]); //Nike U.S.A.
}
chainStore();
//在上面的代碼中,store2只進行了一次賦值,理論上它的值已定,但後面通過改寫store1的值,發現store2的值也發生了改變,這正是引用類型的特徵,也是我們要注意的地方。

 

發佈了0 篇原創文章 · 獲贊 104 · 訪問量 63萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章