typeof 運算符把類型信息看成字符串返回。typeof 返回值有六種可能: "number," "string," "boolean," "object," "function," 和 "undefined."
咱們能夠使用typeof來獲取一個變量是否存在javascript
==示例:==java
console.log( typeof arr == Integer);
// Numbers
typeof 37 === 'number';
typeof 3.14 === 'number';
typeof(42) === 'number';
// Strings
typeof "bla" === 'string';
// Booleans
typeof true === 'boolean';
// Undefined
typeof undefined === 'undefined';
// Functions
typeof function(){} === 'function';
typeof class C {} === 'function';
typeof Math.sin === 'function';
複製代碼
對於Array,Null等特殊對象使用typeof一概返回object,這正是typeof的侷限性。數組
若是咱們但願獲取一個對象是不是數組,或判斷某個變量是不是某個對象的實例則要選擇使用instanceof。函數
instanceof用於判斷一個變量是否某個對象的實例,instanceof 左操做數是一個類,右操做數是標識對象的類。測試
instanceof 運算符是用來測試一個對象是否在其原型鏈原型構造函數的屬性。其語法是 object instanceof constructor
ui
console.log(arr instanceof Array);
var a=new Array();
alert(a instanceof Array); //true,
alert(a instanceof Object)//true
function test(){};
var a=new test();
alert(a instanceof test) //true。
複製代碼