js中的數據類型和判斷數據類型


js中的數據類型和判斷數據類型

基本數據類型,六大基本數據類型:字符串(String)、數字(Number)、布爾(Boolean)、對象(Object)、空(Null)、未定義(Undefined)。

1,字符串:string,單引號或者雙引號號起來的,就是字符串。

2,數字(Number),數字類型,包括浮是點數整數等。

3,布爾(Boolean),false,true。

4,未定義(undefined),未定義,當一個變量未創建或者創建未賦值的時候就是undefined。

5,空(Null),不存在,dom節點不存在,返回值為null。

6,對象(object),js中萬物皆對象。

7,不是基本數據類型,function。

8,數組(array),[]

那么如果有一個變量,如何判斷它的數據類型。

1,首先typeof可以解決大部分的數據類型判斷。以上1-4和7(8等會再說)都是可以直接(typeof 變量名)返回變量的基本數據類型的,判斷某個是否為String類型,可以直接 if(typeof(你的值) == "string"){}。只有null和object返回object類型,這里可以理解成null是一個空對象,但是由於(null == undefined)返回ture。所以可以理解成一個空對象的占位符。

怎么判斷null和object類型呢 ?首先判斷是不是object,然后在判斷是不是null,若是返回null,若不是返回object:

function isObj(str)
{
    if(str === null)
    {
       return false;
    }
    return typeof str === 'object';
}

 

 

那么8返回的也是object,怎么判斷呢?instanceof出場。

2,instanceof 用來判斷某一個變量是否是某一個對象的實例,是一個三目運算符:a instanceof b?alert("true"):alert("false")  //注意b值是你想要判斷的那種數據類型,不是一個字符串,比如Array。

       var a;
            var b = 2;
            var c = "字符串";
            var d = false;
            var e = null;
            var f = undefined;
            var g = [];
       var i = new Object();
var h = function hh(argument) { } alert(e instanceof Array)
        alert(i instanceof Array)
       alert(g instanceof Array)

此外還有一個constructor,用法跟instance差不多,不多說了。

上面說了這些,其實在用的時候,要組合起來用,先判斷變量的類型,再在范圍內做下一步的判斷就可以。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM