ECMAScript 中有5種簡單數據類型

 ECMAScript 中有5種簡單數據類型(也稱基本數據類型):Undefined,Null,Boolean,Number,和String .還有一種複雜數據類型object.
  object 本質上是由一組無序的名值對組成的。EcmaScript不支持任何創建自定義類型的機制,而所有值最終都將是上述6種數據類型之一。
1:undefined類型: 只有一個值,即特殊的undefined.在使用var 聲明變量但未對其加以初始化時,這個變量的值就是undefined.
2:  null類型:只有一個值,從邏輯角度來看,null值表示一個空對象指針,而這也正是使用typeof 操作符檢測null值時會返回"object"的原因。如果定義的變量準備將來用於保存對象,那麼最好將該變量初始化爲null而不是其他值。這樣一來,只要直接檢查null值就可以知道相應的變量是否已經保存了一個對象的引用。
    實際上,undefined值是派生自null值的,因此ECMA-262規定對他們的相等性測試要返回true.
    alert(null==undefined) //true
 這裏,位於null和undefined之間的相等操作符(==)總是返回true,不過要注意的是,這個操作符出於比較的目的會轉換其他操作符。
3:boolean類型
   該類型只有兩個字面值:true和false.這個兩個值與數字值不是一回事,因此true不一定等於1,而false也不一定等於0.
  需要注意的是:Boolean 類型的字面值true和false是區分大小寫的。也就是說,True和False(以及其他的混合大小寫形式)都不是Boolean值,只是標識符.
4:Number類型
  number類型應該是ECMAScript中最令人關注的數據類型,這種類型使用IEEE754格式來表示整數和浮點數值(浮點數值在某些語言中也被稱爲雙精度數值).爲支持各種數值類型,ECMA-262 定義了不同的數值字面量格式。
 除了以十進制表示外,整數還可以通過八進制或16進制的字面值來表示
   NaN,即非數值(Not a Number)是一個特殊的數值,這個數值用於表示一個本來要返回數值的操作數未返回數值的情況。
   NaN本身有有兩個非同尋常的特點。首先,任何涉及NaN的操作(例如NaN/10)都會返回NaN,這個特點在多步計算中有可能導致問題。其次,NaN與任何值都不相等,包括NaN本身.例如:alert(NaN==NaN) // false
 針對NaN的這兩個特點,ECMAScript定義了isNaN()函數。這個函數接受一個參數,該參數可以是任何類型,而函數會幫我們確定這個參數是否"不是數值"。isNaN()在接收到一個值之後,會嘗試將這個值轉換爲數值。某些不是數值的值會直接轉換爲數值。例如字符串"10"或Boolean值。而任何不能被轉換爲數值的值都會導致這個函數返回true,
例如:alert(isNaN(NaN))  //true
          alert(isNaN(10)); //false (10是一個數值)
          alert(isNaN("10"));  //false (可以被轉換成數值10)
          alert(isNaN("blue")) ; //true(不能轉換成數值)
          alert(isNaN(true));  //false 可以被轉換成數值1
5:String類型
  String類型用於表示有零或多個16位Unicode字符組成的字符序列,即字符串。字符串可以由雙引號(")或單引號(')表示。
6:Object類型
    ECMAScript中的對象其實就是一組數據和功能的集合。對象可以通過執行new操作符後跟要創建的對象類型的名稱來創建。而創建object類型的是咧併爲其添加屬性和方法,就可以創建自定義對象。例如: var o=new Object();
object的每個實例都具有下列屬性和方法:
      constructor    ----------保存着用於創建當前對象的函數。對於前面的例子而言,構造函數(constructor)就是Object()
      hasOwnProperty(propertyName) ---------用於檢查給定的屬性在當前對象是實例中(而不是在實例的原型中)是否存在.其中,作爲參數的屬性名(propertyname)必須一字符串形式指定
      isPrototypeof (object) --------用於檢查傳入的對象是否是另一個對象的原型。
      propertyIsEnumerable(propertyName)---------用於檢查給定的屬性是否能夠使用for-in語句來枚舉。
      toString()            -----------返回對象的字符串表示。
     valueOf() 返回對象的字符串,數值或布爾值表示。通常與toString()方法的返回值相同。
發佈了46 篇原創文章 · 獲贊 8 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章