原始值(基本數(shù)據(jù)類型)存儲(chǔ)位置:stack棧數(shù)據(jù) 容器內(nèi)容不可變
Number 數(shù)字類型 :整數(shù) 浮點(diǎn)數(shù)
- 數(shù)字最大值
Number.MAX_VALUE 輸出 1.7976931348623157e+308
若超過(guò)最大值則 輸出 infinity -infinity - NaN
- 數(shù)字最小值
Number.MIN_VALUE 輸出 5e-324
String 字符串:" 內(nèi)容" 或 '內(nèi)容'
- "表示 " 、\n 表示換行、\t表示制表符tab、\\ 表示 \
boolean 布爾:true false
Underfined 未定義:未初始化,未知類型
null 空,占位符:null
- typeof返回值object
引用值(引用數(shù)據(jù)類型) 存儲(chǔ)位置:heap堆數(shù)據(jù) ,賦值過(guò)去的是地址(容器),push后內(nèi)容會(huì)變
object 對(duì)象:各種值組成的集合
ES6 新增了Symbol
強(qiáng)制類型轉(zhuǎn)換
其他數(shù)據(jù)類型轉(zhuǎn)換為string
方法一:調(diào)用被轉(zhuǎn)換數(shù)據(jù)類型的toString()方法
- 格式:被轉(zhuǎn)換數(shù)據(jù)類型.toString();
- 但是null dundefined沒(méi)有toString方法,如果調(diào)用會(huì)報(bào)錯(cuò)
- 不會(huì)影響原變量,會(huì)將轉(zhuǎn)換的結(jié)果返回
方法二:調(diào)用String()函數(shù),并將被轉(zhuǎn)換的數(shù)據(jù)作為參數(shù)傳遞給函數(shù)
- 格式: String();
- 對(duì)于null和undefined ,直接轉(zhuǎn)換為字符串"null" ,字符串"undefined"
方法三:'' "" 本質(zhì)調(diào)用了String()函數(shù)
其他數(shù)據(jù)類型轉(zhuǎn)換為number
- 在JS中如果需要表示16進(jìn)制的數(shù)字,需要以0x開(kāi)頭。
如果表示8進(jìn)制的數(shù)字,需要以0開(kāi)頭。
如果要表示2進(jìn)制的數(shù)字,需要以0b開(kāi)頭(不是所以瀏覽器都支持,不推薦) - 注意: 空串 空格 = 0
-不僅僅是數(shù)值 = NaN
true=1 false=0 null=0
undefined=NaN
方式一:調(diào)用Number();函數(shù)
方式二:使用+ -,本質(zhì)是調(diào)用Number函數(shù),但是會(huì)改變數(shù)值的正負(fù)性
方式三:可以通過(guò)parseInt(需要轉(zhuǎn)換的字符串)/parseFloat(需要轉(zhuǎn)換的字符串)parseInt/parseFloat都會(huì)從左至右的提取數(shù)值, 一旦遇到非數(shù)值就會(huì)立即停止, 停止的時(shí)候如何還沒(méi)有提取到數(shù)值, 那么就返回NaN,parseInt/parseFloat都會(huì)將傳入的數(shù)據(jù)當(dāng)做字符串來(lái)處理
let value = true;
// let num = Number(value);
// let num = +value;
let num = parseInt(value); // parseInt("true");
console.log(num);
console.log(typeof num);
例如

parseInt(a,10); 將x轉(zhuǎn)換為10進(jìn)制。
其他數(shù)據(jù)類型轉(zhuǎn)換為Boolean,調(diào)用Boolean函數(shù)
1.將String類型轉(zhuǎn)換為布爾類型
只要字符串中有內(nèi)容都會(huì)轉(zhuǎn)換為true, 只有字符串中沒(méi)有內(nèi)容才會(huì)轉(zhuǎn)換為false
2.將Number類型轉(zhuǎn)換為布爾類型
只有數(shù)值是0才會(huì)轉(zhuǎn)換為false, 其它的都會(huì)轉(zhuǎn)換為true
如果是NaN也會(huì)轉(zhuǎn)換為false
3.將undefined類型轉(zhuǎn)換為布爾類型
undefined會(huì)轉(zhuǎn)換為false
4.將null類型轉(zhuǎn)換為布爾類型 null會(huì)轉(zhuǎn)換為false
5.空字符串/0/NaN/undefined/null 會(huì)轉(zhuǎn)換成false, 其它的都是true
6.對(duì)象 也是 true
例如
例