1. 程式人生 > >Javascript資料型別

Javascript資料型別

最近遇到javascript的資料型別有哪些,有點錯亂了,比較混亂,今天整理一下,記下來 javascript的資料型別有

字串、數字、布林、物件、Null、Undefined

當然看到這裡可能會問為什麼沒有陣列、函式啦,彆著急,往下看,這些又可以分為以下兩類

  1. 原始型別(String、bool、number、null、underfined)
    原始型別是可按照值來訪問,即其儲存在棧記憶體當中,可以直接進行修改、複製、訪問
  2. 引用型別(object、array、function)
    引用型別,顧名思義是我們訪問的是它的一個引用,即地址,因為引用型別本身資料結構較為複雜,佔用記憶體空間較大,所以其儲存位置是堆空間,棧記憶體儲的只是其堆記憶體中對應的地址
備註:這也是js中深拷貝和淺拷貝需要注意的地方,對於原始型別,他們的深拷貝直接複製即可,但是對於引用型別,直接複製只是複製給他的一個地址空間的引用,只是淺拷貝,對應的具體怎麼操作,之後再談(這個是有血淚的面試教訓)

總的來說,js資料型別一共有8種, 字串、數字、布林、物件、Null、Undefined,array和function 注意:

  1. underfine是一個牛B的資料型別,自己單獨一類
  2. null是特殊的物件,直接複製即可執行深拷貝
  3. NaN (not a number) 這個關鍵字的意思是不是一個數字,但是他的資料型別是number

差不多就這麼多,記下啦,如有問題,歡迎補充