首頁 > web前端 > js教程 > 主體

JavaScript資料類型的詳細介紹

零下一度
發布: 2017-07-17 16:05:40
原創
1144 人瀏覽過

1、基本資料型別和引用資料型別

  ECMAScript包含兩個不同型別的值:基本資料型別和參考資料型別。

  基本資料類型指的是簡單的資料段,引用資料型態指的是有多個值構成的物件。

  當我們把變數賦值給一個變數時,解析器首先要確認的就是這個值是基本型別值還是參考型別值。

2、常見的基本資料類型:

  Number、String 、Boolean、Null和Undefined。基本資料類型是按值存取的,因為可以直接操作保存在變數中的實際值。範例:

  var a = 10;

  var b = a;

  b = 20;

  console.log(a); // 10;

  console.log(a); // 10值

  上面,b取得的是a值得一份拷貝,雖然,兩個變數的值相等,但是兩個變數保存了兩個不同的基本資料型別值。

  b只是儲存了a複製的一個副本。所以,b的改變,對a沒有影響。 JS總共為我們定義了6中資料類型,分別是:undefinednullboolean(布林)、 number(數字)、string(字串)、object(物件)。 (ES6中定義了另外其他的資料型態)。其中前

5

中為簡單資料型別、object為複雜資料型別在理解每一種資料型別之前,我們先說一下變數,在任何語言中變數都是儲存資訊的容器。例如:在數學中 x = 5;那x就是數字5的容器,x就是變數。在JS中使用

var
關鍵字定義一個變數。例如:var x = 5;

說到這裡,我們就很好理解什麼是資料型了。在數學中數字也分為整數、小數、負數。 。 。等等好幾種類型,每一種類型適合什麼樣的運算元則,都有明確的規定。那麼在JS這門語言中,就定義了這6中資料類型,以及每種類型的使用規則和使用場景。接下來我們一一查看。

在講每個型別之前我們先介紹一個js運算子:

typeof    
(用來偵測變數的資料型別)。

var a; 

typeof(a);    //undefined

var b = 123;

#typeof b ;  //number

上面的程式碼可以看出typeof的()是可選項。

undefined

只有一個值就是undefined;

那我們先來定義一個undefined的變數:

var a = undefined

我們知道undefined是未定義的意思,那這個變數有什麼意義呢?其實undefined並不是用來定義一個變量,而是當變數未初始化的時候,自動賦予undefined的值。例如:

var a
;這個時候a就自動被賦予undefined的值。

那為什麼要這麼做呢?我們想想數學上當我們只寫一個x的時候,我們能說這個x是整數或小數或負數嗎?肯定不能吧!同樣的道理,如果沒有undefined這個資料型,我們定義一個變數 var a;我們能說這個變數是數字?字串?還是對象?肯定不能吧?現在有了undefined我們就可以說這個a是undefined類型的。這就是undefined資料類型的意義。

null

也只有一個值就是null;   

var b = null
;

邏輯角度來看,null表示的是一個空指針對象。那null的用途是什麼呢?我們可以用typeof null;發現回傳的並不是null,而是object,呵呵 你這個騙子你不是說typeof可以偵測資料型別嗎?其實這恰恰就能說明null的用途。

如果我們定義一個變數將來準備保存物件。那我們最好將這個變數初始化為null。

這裡要另外提一點的是:undefined是衍生自null值的。所以

undefined == null;    //true

boolean

有兩個值,分別是:true和false;    

var  c = true;    

var d = false;

雖然boolean類型只有兩個值,但是js中所有的資料型別都可以和boolean值互相轉換。轉換規則如下:

###                    資料類型                          false###

                    string                      #                    number             非0數字值(含無限大)         0/Na#N#N#N#N# #                       任何物件                            


#                    undefined                         


這些轉換規則對於學習後面的流程控制語句將會非常重要。


number

這種型別表示數字: 

var f = 1234566

;  

#var g = 1.2356
;

另外number型別還有一個特別的值:

NaN

(非數值Not a Number)##這個數值用來表示一個本來要傳回數值的運算元未傳回數值的情況(這樣就不會拋出錯誤了)。例如,在其他程式語言中,任何數值除以0都會導致錯誤,從而停止程式碼執行。但在JavaScript中,任何數值除以0會回傳NaN,因此不會影響其他程式碼的執行。

string用這種型別表示字串:

var s = "abcdef";

var t = "北京"

;

字串可以有單引號(')或雙引號(")表示。只要變數是由單引號或是雙引號表示的,那麼這個變數就是字串

。 ##var b = "5689";    typeof b;    //"string"

object

物件是一組資料與功能的集合

##var o =new Object()

;

o.name="beijing";     //物件的屬性

#o.run = function(){};    //物件的方法

當你建立一個物件的時候,js會自動為這個物件實例新增下列預設屬性和方法。在實例的原型中)是否存在。用於檢查傳入的物件是否為另一個物件的原型。 #toString()-傳回物件的字串表示。

以上就是js的6中基本資料型,下一篇讓我們來了解這6種資料型別之間的相互轉換。

以上是JavaScript資料類型的詳細介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!