javascript原始類型

來源:互聯網
上載者:User
在ECMAScript中提供了5種原始類型(Primitive type,Null,Boolean,Number和String)。並提供了typeof運算子來判斷這個值是否在某個類型範圍內。
typeof有一個參數,即它要檢測的變數或值。var temp = "Hello world";
alert(typeof temp);   //這裡顯示是"string"
alert(typeof 95);     //這裡顯示是"number"

對變數或值使用typeof運算將會返回以下幾種類型:
"#ff0000" 變數為"Undefined"類型
"boolean" 變數為"Boolean"類型
"number" 變數為"Number"類型
"string" 變數為"String"類型
"object" 變數為參考型別或"Null"類型
也就是ECMAScript中提供的5種原始類型

1."Undefined"類型
Undefined類型只有一個值就是undefined。當變數聲明後沒有初始化,這個變數的值就是undefined。如:var temp;
alert(temp == undefined);  //這裡顯示為true,說明這兩個值是相等的

當一個函數沒有明確的傳回值時,它也將返回undefined
2."Null"類型
Null類型也只有一個值就是null。null其實是從undefined派生來的,也因此在ECMAScript中它們被定義為相等的。alert(null == undefined);   //這裡顯示為true說明這兩個值是相等的

雖然這兩個值是相等的,但是它們的意義卻並不相同。undefined表示一個聲明了但沒有初始化的變數的值,null則表示尚未存在的對象,如果一個函數或方法要返回一個對象,但對象不存在時就應用null而不是undefined。
3."Number"類型
在ECMAScript中Number既可以表示整數也可以表示浮點數。整數也可以有8進位(0開頭)和16進位(0x開頭)表示
Number類型還有幾個特殊值:Number.MAX_VALUE(可以表示的最大值),Number.MIN_VALUE(可以表示的最小值),當超過最大值是變數將被賦予Number.POSITIVE_INFINITY,當小於最小值時變數將被賦予Number.NEGATIVE_INFINITY。
由於無窮大可以是正數也可以是負數,因此只有一個函數來判斷是否越界(isFinit函數)
最後還有一個特殊值NaN,它表示一個非數值(Not a Number)。一般來說只有當其它類型轉換成Number類型失敗時會被賦予NaN,但是NaN有一個奇特的地方就是它自身並不相等。alert(NaN == NaN);   //顯示為false

出於這個原因,因此一般不推薦直接使用NaN,而是使用函數IsNaN來判斷。
4."String"類型
String是唯一一個沒有固定大小的原始類型。String儲存的為Unicode字元,字串中每個字元都有一個固定的位置,從下標0開始計算。字串的值可以用雙引號也可以用單引號聲明。

其實在ECMAScript中的Boolean,Number和String都是偽對象,這也就是說其實它們都是有屬性和方法的。這幾個類型都有個toString方法來轉換成字串類型。Number類型的toString方法有兩種模式,預設模式和基模式。預設模式下以10進位方式將值轉換成字串。在基模式下可以根據參數轉換成2進位,8進位,16進位,基就是要轉換成進位的基數。
字串轉換成數字,有兩種方法即:parseInt和parseFloat方法,分別對應整數和浮點數。轉換失敗則返回NaN。parseInt方法也有基模式。
強制類型轉換:
Boolean(val) 轉換成Boolean類型
Number(val) 轉換成Number類型
String(val) 轉換成String類型

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.