本文從javascript的數(shù)據(jù)類型的簡介開始談起,接著講述了javascript的6種數(shù)據(jù)類型,分別為Number、Boolean、String、Null、Undefined和Object,并給出了一個typeof操作符的示例,這里分享給大家。
1.數(shù)據(jù)類型是什么?
我們接觸的絕大多數(shù)程序語言來說,把數(shù)據(jù)都進行了分類,包括數(shù)字、字符、邏輯真假:int,long,string,boolean....等等;我們都知道計算機對數(shù)據(jù)處理時是采用二進制的方式。將數(shù)據(jù)加載到內(nèi)存中,并且通過CPU調(diào)度進行計算得到最終結(jié)果,那么,難道內(nèi)存存儲數(shù)據(jù)時會記錄所以數(shù)據(jù)的類型嗎?我認為答案是否定的,內(nèi)存中的數(shù)據(jù)應(yīng)該會根據(jù)所占內(nèi)存的大小來進行區(qū)分和計算的,兩種不同類型數(shù)據(jù)的計算,對于CPU來說只是調(diào)度了兩個所占內(nèi)存大小不一的數(shù)據(jù)來進行計算,所以對于CPU來說,數(shù)據(jù)只有1和0。那么這里就出現(xiàn)了問題,有些人會說Java語言某兩種數(shù)據(jù)不能直接計算,必須轉(zhuǎn)換才能計算。這里,就是強類型和弱類型的區(qū)別,強類型語言會對每一種數(shù)據(jù)進行嚴格的檢查,也就是對于每種類型內(nèi)存所占空間進行檢查,如果不符合要求,就不允許編譯或者運行。弱類型則沒有對數(shù)據(jù)進行嚴格的檢查,允許大多數(shù)數(shù)據(jù)類型直接進行計算,JavaScript屬于弱類型。
2.JavaScript有哪些類型?
包括以下幾種:
Number:也就是數(shù)字包括浮點數(shù)
Boolean:真假(true or false)
String:字符串
Null:空對象指針,表明指向的內(nèi)存空間不存在
Undefined:未定義,表明指向的內(nèi)存空間存在,但是沒有數(shù)據(jù)
Object:一中復(fù)雜的數(shù)據(jù)類型,如果熟悉類似Java面向?qū)ο笳Z言,對此應(yīng)該很好理解
通過以上這6中類型,就能將數(shù)據(jù)進行分類了,對于數(shù)據(jù)的容器JavaScript統(tǒng)一用關(guān)鍵字 var 聲明,那么如何確定一個變量是那種類型呢?這就要用到關(guān)鍵字 typeof
這里,需要說明的是 typeof 是一個操作符(類似+、-、*、/) 而非 function 你可以直接 typeof a 使用(盡管這樣不推薦)。而 null 和 undefined 在比較大小時是相等的。因為 undefined 派生自 null。
下邊是 typeof 的舉例
代碼如下:
var mesage='some string';
var obj=new Object();
var a;
alert(typeof message);//'string'
alert(typeof(message));//'string'
alert(typeof(95));//'number'
alert(typeof(a));//'undefined'
alert(typeof(null==undefined));//'boolean'
alert(null==undefined);//'true'
alert(obj);//'object'
alert(null);//'object'(在不同瀏覽器中也可能為'null')
以上就是關(guān)于javascript數(shù)據(jù)類型的所有內(nèi)容了,希望大家能夠喜歡。
更多信息請查看IT技術(shù)專欄