前言
什麼是JS呢?全稱是JavaScript,是能夠運作在JS解釋器中的腳本語言。那知道了什麼是JS,那你知道什麼是ES嗎?如果你了解JS的前世今生,你就知道什麼是ES了,ES就是JS,相當于ES是大名,JS是小名。就想給同學起外号,10年之後,隻記得他的外号,而忘記他的真名了。現在呢,我們就一起來了解一下JS的資料類型吧。
宏觀把控
先來一張圖簡單了解一下js的資料類型都有哪些内容:

如何擷取資料類型呢?
這裡就涉及到了一個運算符:typeof,它的文法是
string typeof(變量);
舉個例子吧:
alert(typeof "123"); //彈出string
alert(typeof true); //彈出boolean
alert(typeof 123); //彈出number
這是強調一下:js是一種弱類型的語言,所有的變量都是用var來聲明的,而且不會檢查類型,如下代碼都對:
var num=10;
alert(typeof num);
num="123";
alert(typeof num);
num=true;
alert(typeof num);
num=new Date();
alert(typeof num); //object
資料類型之基本類型
1.都有哪些基本類型呢?
如上圖所示,大緻有3種,基本類型(也叫值類型):number,boolean,string;注意這三個都是小寫的,如果首字母大寫了,Number,String,Boolean就變成包裝類型了。
2.基本類型的轉換
1)任何一個不為空的對象轉換成boolean值都為true;
2)數字轉成字元串
string(數字)
數字+""
數字.toString()
3)字元串轉數字
字元串-0
number(字元串)
parseInt() parseFloat()
4)轉boolean
否定兩次,真假值不變,但是可以自動轉成bool,例如:
if(!!val) {
}
資料類型之引用類型
1.對象類型
對象類型傳回object,例如數組與日期都是對象類型:
alert(typeof {}); //object 對象類型
alert(typeof new Array()); //object
alert(typeof new Date()); //object
2.函數類型
先定義一個函數,之後取這個函數的類型就是函數類型:
var func=function() {};
alert(typeof func); //function
alert(typeof typeof func); //string
資料類型之空類型
1.null
值為null時,取類型,也會傳回object,例如:
var number=null;
alert(typeof number); //object
2.undefined
undefined表示為“未定義”,如果聲明一個變量,但是未指派,取類型就會顯示undefined。
var num;
alert(typeof num); //undefined
總結
任何一門語言都有自己的資料類型,他們之間有共同點,但是也有自己獨特的内容,快去發現他們的不同吧。