JS中基本數據類型與引用數據類型的區別:


JS中數據類型分為兩類: 基本數據類型 + 引用數據類型

1.基本數據類型 ----- 直接在棧內存中保存數據值,按值訪問。

 有5種:String字符串Number數字 Boolean布爾值UndefinedNull 

當copy數據時,copy到的是數據值本身。基本數據類型的變量與變量之間是獨立存在,修改其中一個變量,不會影響其他變量

例:var A = ‘abc’;

       B = A;

       A = ‘abcd’

則修改變量A的值后,變量B的值不會被修改,仍為'abc'。

------------------------------------------------------------------------------------------------------------------------

2.引用數據類型 ----- 變量保存的是內存地址(對象的引用),訪問時訪問的也是內存地址(相當於指針,在各自的內存地址里存儲了數據)

Object對象

當copy數據時,copy到的是保存數據的內存地址不是數據值本身。當兩個變量保存的是同一個引用數據對象,則其中一個變量的屬性發生改變,另一個變量也會隨之變化。

例:var A = {name: 'wangxiaoming', age: 19};

       B = A;

則變量B其實copy到的是變量A的內存地址;此時修改A的屬性為:A.name = 'Tom',其實修改的是變量A保存的內存地址中的內容,所以變量B也被影響---{name: 'Tom', age: 19}。

-------------------------------------------------------------------------------------------------------------------------

當比較數據時:基本數據比較的是數據值的大小;而引用型數據比較的是保存數據的內存地址——若兩個變量的數據一模一樣,但內存地址不同,則會返回false。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM