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

(1)值類型:數(shù)值、布爾值、null、undefined。
(2)引用類型:對象、數(shù)組、函數(shù)。
四、如何理解值類型和引用類型及舉例
我們可以用“連鎖店”和“連鎖店鑰匙”來理解,不知道以下比喻合不合適,-。
(1)值類型理解:變量的交換等于在一個(gè)新的地方按照連鎖店的規(guī)范標(biāo)準(zhǔn)(統(tǒng)一店面理解為相同的變量內(nèi)容)新開一個(gè)分店,這樣新開的店與其它舊店互不相關(guān)、各自運(yùn)營。

function chainStore()
{
var store1='Nike China';
var store2=store1;
store1='Nike U.S.A.';
alert(store2); //Nike China}
chainStore();
//把一個(gè)值類型(也可以叫基本類型)store2傳遞給另一個(gè)變量(賦值)時(shí),其實(shí)是分配了一塊新的內(nèi)存空間,因此改變store1的值對store2沒有任何影響,因?yàn)樗幌褚妙愋停兞康慕粨Q其實(shí)是交換了指像同一個(gè)內(nèi)容的地址。

(2)引用類型理解:變量的交換等于把現(xiàn)有一間店的鑰匙(變量引用地址)復(fù)制一把給了另外一個(gè)老板,此時(shí)兩個(gè)老板同時(shí)管理一間店,兩個(gè)老板的行為都有可能對一間店的運(yùn)營造成影響。

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只進(jìn)行了一次賦值,理論上它的值已定,但后面通過改寫store1的值,發(fā)現(xiàn)store2的值也發(fā)生了改變,這正是引用類型的特征,也是我們要注意的地方。 
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • JS中可以把變量分成兩部分,基本類型和引用類型。 JavaScript值類型和引用類型有哪些(1)值類型:數(shù)值、布...
    wangxiaoda閱讀 1,040評論 0 2
  • 1.在做ife2015 task2 的題目,關(guān)于深度克隆一個(gè)目標(biāo)對象,返回一個(gè)完整的拷貝。像我這種沒學(xué)多少的,以為...
    _v_xw閱讀 264評論 0 0
  • 轉(zhuǎn)載自 : http://www.cnblogs.com/lxq1990/archive/2012/11/04/2...
    咖啡加糖a閱讀 206評論 0 0
  • 一、寫個(gè)函數(shù)判斷輸入數(shù)是否是閏年 基本思想就是,判斷一個(gè)年份的2月有沒有29號,如果有就是閏年反之則不是閏年利用了...
    凱旋閱讀 174評論 0 0
  • 文 | 寶寶媽 每年,我會從婚姻中逃離15天,是一種近于完全的逃離,每天只剩下一個(gè)問候的電話。 寶寶剛斷奶的那次出...
    顏藍(lán)閱讀 343評論 0 0

友情鏈接更多精彩內(nèi)容