2014年11月22日 星期六

JavaScript 基本資料型態

資料型態決定了以什麼方式呈現這個資料,大致上有字元(文字)、數字與邏輯值三種型式。

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
Number即是儲存數字的資料型態,值得一提的是,不論是浮點數、整數型式,通通都可以Number方式儲存,當然,8進位與16進位的宣告也是可行的
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
未定義的宣告預設的型態都是Undefined,可以隨著後續對變數的操作轉換型態
var ud; //ud目前是undefined型別
ud = 123;//ud現在是Number型別了
  • Function 
JavaScript可以用一個變數來對應一個Function
var foo = Function(a,b) //宣告一個Function(a,b),a,b是傳入的參數,並把它交給foo
{
    //函數內容;
}
foo(1,2);//透過操作foo,可以操作function(a,b)

JavaScript的基本型別大致如此,不過後續還有組合型別Array及Object等著唷

沒有留言:

張貼留言