首頁  >  文章  >  web前端  >  判斷JavaScript變數資料型別的方法

判斷JavaScript變數資料型別的方法

巴扎黑
巴扎黑原創
2017-08-21 10:43:231176瀏覽

  雖然Javascript是弱型別語言,但是,它也有自己的幾種資料型別,分別是:Number、String、Boolean、Object、Udefined、Null。其中,Object屬於複雜資料類型,Object   由無序的鍵值對組成。其餘幾種都屬於簡單資料類型。注意:變數類型首字母大寫,而變數值首字母是小寫的。  JavaScript不支援自訂類型,所以JavaScript中的所有值都屬於這六種類型之一。  要搞清楚一個變數是何種資料型,就要使用typeof運算子了,注意,尤其要注意的是,typeof是操作符,不是方法,因此,typeof中的字母"o"是小寫的。  語法:typeof temp;  //temp是變量,這裡可以不加括號,但為了程式的可讀性,最好還是加上括號。

JavaScript 本身可以用它typeof來偵測變數的型別,但是有些結果卻讓人疑惑,例如,陣列的型別居然是"Object"。

下面是用typeof對各種資料型別的判斷結果

var myFunction = function() {
  console.log("hello");
};
var myObject = {
  foo : "bar"
};
var myArray = [ "a", "b", "c" ];
var myString = "hello";
var myNumber = 3;
typeof myFunction;  // 返回 "function"
typeof myObject;   // 返回 "object"
typeof myArray;   // 返回 "object" -- 小心哦!
typeof myString;   // 返回 "string";
typeof myNumber;   // 返回 "number"
typeof null;     // 返回 "object" -- 小心哦!
if (myArray.push && myArray.slice && myArray.join) {
  // 很可能是一个数组
  // 当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。
}
if (Object.prototype.toString.call(myArray) === "[object Array]") {
  // 肯定是一个数组!
  // 这是判断一个变量是否为数组的最可靠方法
}

以上是判斷JavaScript變數資料型別的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn