使用typeof()或者typeof數據類型檢測


使用typeof()或者typeof進行基本數據類型檢測(  typeof(X)等於typeof X  返回的是數據類型)

數據類型有:基本數據類型,字符串(string),布爾值(true/false),未定義undefined,null(空值),數組(array),對象類型,函數(function(){}) ,正則表達式。

<script type="text/javascript">
        console.log(typeof 4);  //number

        console.log(typeof (4));//number

        console.log(typeof "str");//字符串
        console.log(typeof true);//布爾值boolean
        console.log(typeof undefined);//未定義undefined

   console.log(typeof a);//a是未定義的變量,所以就是undefined。
        console.log(typeof null);//空值,對象類型
        console.log(typeof []);//數組,對象類型
        console.log(typeof {});//對象類型
        console.log(typeof function(){});//函數,function
        console.log(typeof /a/);//正則表達式,對象(瀏覽器不同,有可能返回function)
    </script>

以上所有都是基本數據類型,只有基本數據類型才可以使用 typeof()或者typeof 來返回所屬的是什么類型數據。

//引用類型只能使用 instanceof

//使用instanceof(X) 或者 instanceof X 檢測數據類型
        //翻譯為:[] 是 Array的實例,返回true
        console.log([] instanceof Array);//[] 是 Array的實例,返回true
        console.log([] instanceof (Object));//[]是Object的實例,返回true
        console.log({} instanceof Object);//{}是Object的實例,返回true
        console.log({} instanceof Array);//{}不是 Array的實例,返回false
        console.log(1 instanceof Number);//基本數據類型無法使用instanceof 進行檢測數據類型,因為基本數據類型使用instanceof進行檢測,結果都是返回false。

document.write(typeof null);//先判斷Null是什么事數據類型,再來決定返回什么類型的實例。

document.write(null instanceof Object);//先判斷null是什么數據類型。再來決定返回什么類型的實例。

null是Null類型,屬於基本類型,但是typeof null 返回的是字符串'object';instanceof不能檢測基本數據類型,只要是基本數據類型和instanceof連用,返回的都是false。


免責聲明!

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



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