JavaScript 資料型別
一.JavaScript中有兩大類資料型別:
(1).值型別:
String、Number、Boolean、Symbol(ES2015新增)、null和undefined。
boolean,number,string三種值型別,JavaScript為之提供了對應包裝型別,包裝型別和引用型別的差別在於物件的生存週期,在讀取模式下訪問值型別資料的值時,內部會自動為之建立包裝型別的物件,提供了相關方法和屬性,但是操作值型別資料的語句一經執行完畢,就會立即銷燬新建立的包裝型別。
(2).引用型別:
引用型別都是Object或者其子類(ES2015新增類的概念),比如Date,Array,Math和RegExp等。
二.詳細介紹:
(1).String型別:
字串型別可以使用單引號或者雙引號包裹形成。
程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼var webName = "螞蟻部落"; var url = 'softwhy.com';
(2).Number型別:
此型別表示整型和浮點型數字,程式碼如下:
[JavaScript] 純文字檢視 複製程式碼var num1=88.00; // 使用小數點來寫 var num2=88; // 不使用小數點來寫
極大或極小的數字可以通過科學(指數)計數法來書寫:
[JavaScript] 純文字檢視 複製程式碼var y=123e5; // 12300000 var z=123e-5; // 0.00123
還有一種比較特殊的NaN(not a number),它表示一個本來要返回數值的運算元而未返回的情況。
程式碼如下:
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(8%0);
NaN的特點:
(1).任何NaN參與的操作返回值都是NaN。
(2).任何值和NaN都不相等,甚至和其本身都不相等。
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(NaN==NaN);
isNaN()方法可以判斷一個值是否是數值型別,程式碼如下:
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(isNaN("antzone")); console.log(isNaN(3));
(3).Boolean型別:
該型別只有兩個值,false和true。
JavaScript中所有型別的值都可以轉換為布林值,如果將一個值轉換為布林值,可以使用顯式方式:
[JavaScript] 純文字檢視 複製程式碼執行程式碼var str="antzone"; console.log(Boolean(str));
也有隱式轉換,例如在if語句中:
[JavaScript] 純文字檢視 複製程式碼執行程式碼var str="antzone"; if(str){ console.log("螞蟻部落"); }
具體一個值被轉換為true還是false那要看值得資料型別和其實際值,轉換規則如下:
(4).undefined型別:
此型別只有一個值,即undefined。
一個變數宣告但未賦值的時候,它的預設值就是undefined。
[JavaScript] 純文字檢視 複製程式碼執行程式碼var antzone; console.log(antzone);
(5).Null型別:
此型別和undefined型別一樣也只有一個值,即null。
null表示一個空物件,雖然它是Null型別,但是typeof返回值卻是object,但是並不說明它是一個物件,可以說這是javascript的一個小小的錯誤,或許以後就會被修復。
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(typeof null);
如果我們宣告一個變數用來儲存物件,那麼可以將此變數設定預設值為null,這樣就可以判斷此變數是否等於null,以此來判斷此變數是否指向一個物件。
null和undefined相等性比較返回值為true。
[JavaScript] 純文字檢視 複製程式碼執行程式碼console.log(null==undefined);
儘管undefined和null都表示空,但是它們的用法確實有很大不同的,undefined一般表示一個宣告未賦值、未宣告或者屬性不存在,而null一般針對物件,表示一個物件不存在。變數宣告未賦值的時候沒有必要顯式賦值為undefined,但是如果一個變數是要準備儲存物件的,那麼就推薦賦值為null。
(6).Object型別:
關於Object型別和繼承於它的子類這裡不具體介紹了,後續文章會有詳細介紹。
下面只簡單介紹一下如何建立一個Object型別的物件:
[JavaScript] 純文字檢視 複製程式碼var obj=new Object();
上面是用構造方法建立一個Object型別物件。
[JavaScript] 純文字檢視 複製程式碼var obj = {}
上面是用直接量方式建立一個物件。
[JavaScript] 純文字檢視 複製程式碼var obj = { webName: "螞蟻部落", address:"青島市南區" }
Object物件是無序鍵值對集合。陣列也是鍵值對集合,不過是有序鍵值對集合。
相關文章
- JavaScript - 資料型別JavaScript資料型別
- JavaScript資料型別JavaScript資料型別
- JavaScript基本資料型別JavaScript資料型別
- javaScript的資料型別JavaScript資料型別
- JavaScript 資料型別轉換JavaScript資料型別
- JavaScript判斷資料型別JavaScript資料型別
- javascript資料型別轉換JavaScript資料型別
- javascript 資料型別檢測JavaScript資料型別
- javascript中的資料型別JavaScript資料型別
- JavaScript有哪些資料型別?JavaScript資料型別
- JavaScript——資料型別詳解JavaScript資料型別
- JavaScript 資料型別與型別判斷詳解JavaScript資料型別
- 玩轉 JavaScript 之資料型別JavaScript資料型別
- JavaScript獲取物件資料型別JavaScript物件資料型別
- 01.javascript之資料型別JavaScript資料型別
- JavaScript基本資料型別有哪些JavaScript資料型別
- 深入學習JavaScript資料型別JavaScript資料型別
- JavaScript 基本資料型別轉換JavaScript資料型別
- JavaScript資料型別及輸出JavaScript資料型別
- JavaScript中的資料型別-儲存差別JavaScript資料型別
- JavaScript筆記5:計時器、物件、基本資料型別、引用資料型別JavaScript筆記物件資料型別
- JavaScript的資料型別及其檢測JavaScript資料型別
- JavaScript學習之資料型別(1)JavaScript資料型別
- JavaScript 隱式資料型別轉換JavaScript資料型別
- JavaScript的資料型別如何判斷JavaScript資料型別
- JavaScript 基礎 (一) - 基本資料型別JavaScript資料型別
- JavaScript資料型別轉換總結JavaScript資料型別
- 如何判斷JavaScript的資料型別?JavaScript資料型別
- JavaScript資料型別分析及其轉換JavaScript資料型別
- JavaScript變數與資料型別詳解JavaScript變數資料型別
- 分析 JavaScript 的資料型別與變數JavaScript資料型別變數
- 前端基礎之JavaScript的資料型別前端JavaScript資料型別
- JavaScript 基礎 (二) - 引用資料型別 (物件)JavaScript資料型別物件
- 談談JavaScript中常見的資料型別JavaScript資料型別
- JavaScript基本資料型別之undefined和nullJavaScript資料型別UndefinedNull
- javascript 判斷各種資料的型別JavaScript型別
- js資料型別之基本資料型別和引用資料型別JS資料型別
- 資料型別: 資料型別有哪些?資料型別