JS區分大小寫函數
標識符,指變量、函數、屬性的名字spa
關鍵字,JS中具備特殊用途,不可用做標識符指針
保留字,如今雖無特殊用途,未來可能有,也不可用做標識符code
變量,JS是弱類型語言,變量是鬆散類型的,聲明變量時不會標記類型,初始化的過程只是給變量賦一個值對象
ECMAScript5中有5種簡單數據類型,1種引用數據類型blog
typeof操做符可返回變量數據類型,但不許確ip
var str1=10; var str2='10'; var str3=true; var str4; var str5={}; var str6=Array([1,2]); var str7=function(){ }; var str8=null; console.log(typeof str1);//number console.log(typeof str2);//string console.log(typeof str3);//boolean console.log(typeof str4);//undefined console.log(typeof str5);//object console.log(typeof str6);//object console.log(typeof str7);//function console.log(typeof str8);//object
數據類型字符串
一、undefined類型string
只有一個值,已聲明未初始化io
二、null類型
第二個只有一個值的數據類型,邏輯角度看,表示空對象指針,因此typeof會返回object,實際上undefined派生自null,因此ECMA-262規定
console.log(null==undefined)//true
三、boolean類型
JS種有會被轉換爲false的只有6個值
null, undefined, +/-0, NaN, false, ' '空字符串
四、number類型
(1)浮點數值
JS中,0.1+0.2!=0.3,緣由在於計算機中採用二進制保存數據,0.1,0.2在轉成二進制數時是無限循環的,因此只能取一個無限接近於0.3的近似值0.30000000000000004
,對JS來講,這個值還不等於0.3。
(2)NaN
NaN即非數值,表示原本要返回數值的地方未返回數值的狀況(這樣就不會拋出錯誤了,後面代碼可繼續執行),好比,任何數值除以非數值會返回NaN
NaN不等於NaN,任何涉及NaN的操做都會返回NaN
isNaN()函數可幫咱們肯定參數是否「不是數值」,不是數值的參數會直接轉換爲數值
console.log(isNaN(NaN));//true console.log(isNaN(10));//false,10是一個數值 console.log(isNaN("10"));//false,能夠轉換爲數值10 console.log(isNaN("blue"));//不能轉換爲數值 console.log(isNaN(true));//false,可被轉換爲數值1
(3)數值轉換
有三個函數能夠把非數值轉換爲數值,Number(), ParseInt(), ParseFloat()
五、string類型
要把一個值轉換爲字符串有兩種方法
(1)toString()方法,幾乎每一個值都有這個方法,null和undefined沒有
(2)String()方法,所有數值類型都有這個方法,null返回「null」,undefined返回"undefined"
六、object類型
操做符