這篇文章主要介紹了關于JavaScript的變量的數據類型的判斷方法,JS是一種弱類型語言,其數據類型的相關特性有時也受到不少開發者的詬病,需要的朋友可以參考下
雖然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]') {
- // 肯定是一個數組!
- // 這是判斷一個變量是否為數組的最可靠方法
- }
新聞熱點
疑難解答
圖片精選