JavaScript屬於弱型別,也就是在宣告變數時不必特定指定資料型態,變數具體的資料型態會根據變數的具體內容推算出來,並且能隨著內容改變更改型態。
//在強型別語言中,我們往往要指定變數的資料型態 int number = 12; bool b = true; String s = "I am a string"; number = "now I am a string.";//會在編譯中出現錯誤 //JavaScript var number = 12; var b = true; var string = "Hello JS."; number = "now I am a string.";//資料型態轉換
雖然在使用上方便許多,但在變數運算上要多加留意,比如對同樣的運算子"+"而言,對於字串是把兩個字串結合,對於數字則是相加,如果誤用會造成ㄧ些微妙的錯誤。
儘管不必在宣告時定義,JavaScript還是有內定幾種資料型態的:
- Number
var num = 123; var f = 123.456; var numb8 = 03; //8進制的宣告在數字前要加上0 var numb16 = 0xFF;//16進制的宣告要在數字前加上0x
- String
var string = "JavaScript";//宣告時記得要用雙引號包圍字串在使用時,必須考慮清楚自己要用的是字串還是數值,比方說 1 是一個數值,但"1"是一個字元,在轉換上或使用上要多加注意
- Boolean
var btrue = true;//true是一個值,不必特地用雙引號包起來 var bfalse = false;//false是一個值,不必特地用雙引號包起來
- Undefined
var ud; //ud目前是undefined型別 ud = 123;//ud現在是Number型別了
- Function
var foo = Function(a,b) //宣告一個Function(a,b),a,b是傳入的參數,並把它交給foo { //函數內容; } foo(1,2);//透過操作foo,可以操作function(a,b)
JavaScript的基本型別大致如此,不過後續還有組合型別Array及Object等著唷
沒有留言:
張貼留言