Js-數組

數組

1.數組比較

javascript是不能用 ==或 ===操作符直接比較兩個數組是否相等的,返回值都是false

爲什麼都輸出false呢?先弄清楚以下幾點:

  1. javascript包括兩個不同類型的值:基本數據類型和引用數據類型。

  2. 基本數據類型指的是簡單的數據段,引用數據類型指的是有多個值構成的對象。

  3. 常見的基本數據類型:Number、String 、Boolean、Null和Undefined。

    var a = 10;
    var b = a;
    b = 20;
    console.log(a);  //  10
    

    上面b獲取的是a值的一份拷貝,雖然兩個變量的值相等,但是兩個變量保存了兩個不同的基本數據類型值。b只是保存了a賦值的一個副本,所以,b的改變,對a沒有影響。

  4. 引用類型數據:也就是對象類型Object type,比如:Object、Array、Function、Data等。javascript的引用數據類型是保存在堆內存中的對象。

講到這裏應該理解爲什麼輸出的是false了:因爲數組是兌現,== 或===操作符只能比較兩個對象是否是同一個實例,也就是是否是同一個對象引用。目前JavaScript沒有內置的操作符判斷對象的內容是否相同。

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