js的數據類型至今為止共有8種,分為兩類:基本數據類型(7種)和引用數據類型(1種)
基本數據類型:
- String
- Number
- Boolean
- Undefined
- Null
- Symbol
- Bigint
引用數據類型:
- Object
先簡單介紹下7種基本數據類型
一、String(字符串)
1.寫法:
- 單引號 'me'
- 雙引號 "me"
- 反引號 `me`
2.轉義
使用 \ 來進行轉義處理
- \' 表示 '
- \" 表示 "
- \n 表示 換行
- \t 表示 tab制表符
- \\ 表示 \
3.base64轉碼
- 通過使用btoa()將正常字符串轉為base64編碼的字符串(牛客網簡歷投遞郵箱)
- 通過使用atob()將base64編碼的字符串轉為原來的字符串
二、Number
1.寫法:
- 整數 1
- 小數 0.1
- 科學計數法 1.2e3
- 八進制 0123
- 十六進制 0x5E
- 二進制 0B11
特殊值:
- 0(+0) === -0
- NaN(Not a Number) 但它是一個數字
2.存儲方式(64位浮點數)
從左到右:符號占一位,指數占11位(-1023~1024),有效數字占52位
三、Boolean
1.只有兩個值:
true和false
2.五個falsy值:
undefiend、null、0、NaN、''
四、Undefined和Null
undefined和null是兩種不同的數據類型,但都表示空
兩者的區別:
- undefined是值聲明了變量但未賦值,默認值是undefined,如果一個函數沒寫return,那么默認return undefined
- 在習慣上,把非對象的值寫成undefined,把對象的空值寫為null
五、Symbol
符號值類型,表示唯一的值,通常被用作一個對象屬性的鍵值
六、BigInt
表示任意大的數
類型轉換的問題
number => string :String(n)、n+''、(n).toString()(js是以浮點數的形式存儲的,所以不能直接使用.toString()進行轉換)
string => number :Number(s)、s-0、s+、parseInt(s)
任意類型 => boolean :Boolean(x)、!!x
任意類型 => string : x.toString()
