先說說undefined:
Javascript中的變量是弱類型的, 所以聲明變量的時候只需使用var關鍵字即可。如果是像C這樣的強類型語言, 聲明變量的時候如果沒有指定初始值,那么會給他一個默認值,比如int變量的默認值是0。但是在Javascript這樣的弱類型語言中,沒有辦法確定到底該給這樣的變量一個什么樣的默認值,比如我聲明一個變量
var v1;
是給他false還是0,或者是'' ?
因為沒有類型,所以無法確定。 在Javascript中對于這種生命后沒有給定初始值的變量,就給他一個undefined。不過前提是這個變量必須已經聲明,如果對于沒有聲明過的標識符,就會出錯??纯聪旅娴拇a。
vo="vo";//不使用var關鍵字創建的是全局變量,如果不賦值會報錯,如下
//v1;//會報錯
var v2;//undeifned
var v3="";//null
alert(vo);
//alert(v1);//
alert(v2);
alert(v3);
再來說說null:
Javscript有幾個基本類型,Number,String,Boolean,Object。對于Object 類型的變量,他有兩種情況,一種是他是一個對象的實例,另一種他是一個空引用null,熟悉類似Java這樣面向對象語言的朋友應該很容易理解。對于這兩種情況,他們的類型都是Object。Javascript中的變量,在給他賦值的時候,才
會確定它的類型,比如下面這樣。
代碼如下:
var
v1 = 1;
var
v2 =
true
;
alert(
typeof
v1);
//number
alert(
typeof
v2);
//boolean
v2 =
new
Date();
alert(
typeof
v2);
//object
v2 =
"str"
;
alert(
typeof
v2);
//string
v2 =
null
;
alert(
typeof
v2);
//object
新聞熱點
疑難解答
圖片精選