淺談js基礎資料型別 (Elementary Data Type)和typeof,淺談jstypeof

來源:互聯網
上載者:User

淺談js基礎資料型別 (Elementary Data Type)和typeof,淺談jstypeof

JavaScript資料類型是非常簡潔的,它只定義了6中基礎資料型別 (Elementary Data Type)

•null:空、無。表示不存在,當為對象的屬性賦值為null,表示刪除該屬性

•undefined:未定義。當聲明變數卻沒有賦值時會顯示該值。可以為變數賦值為undefined

•number:數值。最原始的資料類型,運算式計算的載體

•string:字串。最抽象的資料類型,資訊傳播的載體

•boolean:布爾值。最機械的資料類型,邏輯運算的載體

•object:對象。物件導向的基礎

#當彈出一個變數時:var aa;alert(aa); //變數定義,彈出undefinedalert(aa);    //變數未定義,undefined , 未定義的變數也是undefined#當判斷一個變數是否存在時:var str;if( str == undefined )  //變數定義,可以這樣判斷if( str == undefined )   //變數未定義,報錯ReferenceError: str is not defined所以,當判斷一個變數是否不存在時,用 if( typeof str == undefined )

typeof:

alert(typeof 1);        // 返回字串"number" alert(typeof "1");       // 返回字串"string" alert(typeof true);       // 返回字串"boolean" alert(typeof {});        // 返回字串"object" alert(typeof []);        // 返回字串"object " alert(typeof function(){});   // 返回字串"function" alert(typeof null);       // 返回字串"object" alert(typeof undefined);    // 返回字串"undefined"

你會發現:JavaScript解譯器認為null是屬於object資料類型的一種特殊形式,而function(){}是function類型,也就是說函數也是一種基礎資料型別 (Elementary Data Type),而不是對象的一種特殊形式。

實際上,在JavaScript中,函數是一個極容易引起誤解或引發歧義的資料類型,它可以是獨立的函數類型,又可以作為對象的方法,也可以被稱為類或構造器,還可以作為函數對象而存在等。

所以,在《JavaScript權威指南》中把function被看做是object基礎資料型別 (Elementary Data Type)的一種特殊對象,另外《悟透JavaScript》和《JavaScript進階程式設計》也把函數視為對象,而不是一種基礎資料型別 (Elementary Data Type)。但是在《JavaScript語言精髓與編程實踐》中卻把function視為一種基礎資料型別 (Elementary Data Type),而把null視為object類型的一種特殊形式。至於誰對誰錯,看來只有根據具體情況而定了。

以上這篇淺談js基礎資料型別 (Elementary Data Type)和typeof就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援幫客之家。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.