細說JavaScript資料類型及轉換
細說JavaScript資料類型及轉換
JavaScript資料類型
1.Boolean(布爾)
布爾:(實值型別)var b1=true;//布爾類型
2.Number(數字)
數值:(實值型別)var n1=3.1415926;//數實值型別
n1.toFixed(3);//四捨五入保留3位小數。
3.String(字串)
var s1=‘hello';//字串類型
字串:(實值型別,字串不可變特性)
4.Undefined(未定義)
undefined屬於實值型別,與其他值計算得到的結果不是我們想要的,但與資料庫中的null稍有區別,比如與數字計算或與字串計算結果。
Undefined類型、Null類型都是只有一個值的資料類型,分別為undefined與null.
5.Null(Null 物件)
6.Object(物件類型)
Object是參考型別,其他都是基礎資料型別 (Elementary Data Type) 。
String也是基本類型,不能為String添加動態屬性,而參考型別時可以的。
參考型別對象 instanceof 類型,判斷某個值是否為某個類型,所有參考型別instanceof Object返回都是true
7.應用類型
對象(object):(參考型別)
var tim=new Date();//物件類型(object)var names=[‘zs','ls','ww'];//數組也是物件類型(object)var obj=null;//object
函數:(參考型別)
function fun(){ } //typeof(fun);//輸出結果為function,函數類型
PS:查看變數的類型用typeof(變數),
JavaScript中的Null與undefined
undefined,表示一個未知狀態
聲明了但是沒有初始化的該變數,變數的值是一個未知狀態(undefined)。 (訪問不存在的屬性或對象window.xxx)方法沒有明確傳回值時,傳回值是一個undefined.當對未聲明的變數應用typeof運算子時,顯示為undefined(*)
null表示尚未存在的對象,null是一個有特殊意義的值。
可以為變數賦值為null,此時變數的值為“已知狀態”(不是undefined),即null。(用來初始設定變數,清除變數內容,釋放記憶體)
undefined==null //結果為true,但含義不同。
undefined===null //false(*),PS:先判斷類型是否一致,然後判斷值。===嚴格等於、!==嚴格不等於
由於==會將值轉換類型後再判斷是否相等,有時可能會有意想不到的結果,所以推薦使用===。但注意,有些情況使用==能帶來更好的效果。
類型轉換
parseInt(arg)將指定的字串,轉換成整數parseFloat(arg)將指定的字串,轉換成浮點數Number(arg)把給定的值(任意類型)轉換成數字(可以是整數或浮點數);轉換的是整個值,而不是部分值。如果該字串不能完全轉換為整型,則返回NaN。(Not a Number)isNaN(arg),判斷arg是否為一個非數字(NaN),NaN與NaN也不相等。String(arg)把給定的值(任意類型)轉換成字串;Boolean(arg)把給定的值(任意類型)轉換成 Boolean 型;(*)eval(codeString)將一段字串的js代碼,計算並執行。
以上所述就是javascript的資料類型和轉換方法了,希望大家能夠喜歡。
延伸閱讀《淺談JavaScript系列》系列技術文章整理收藏
1淺談JavaScript中物件導向技術的類比
2淺談javascript函數劫持[