instanceof只能用來(lái)判斷對(duì)象和函數(shù)允坚,不能用來(lái)判斷數(shù)字和字符串等茫多;
instanceof右邊不能是undefined奇钞;
valueof檢測(cè)null,數(shù)組熬尺,對(duì)象都返回object摸屠;
具體看代碼:
//ECMAScript typeof and instanceof
var obj = {};
var arr = [];
console.log(typeof 1);//'number'
console.log(typeof 'a');//'string'
console.log(typeof arr);//'object'
console.log(typeof obj);//'object'
console.log(typeof true);//'boolean'
console.log(typeof null);//'object'
console.log(typeof undefined);//'undefined'
console.log( 1 instanceof Number);//false
console.log( 'a' instanceof String);//false
console.log( arr instanceof Array);//true
console.log( true instanceof Boolean);//false
console.log( obj instanceof Object);//true
console.log( null instanceof Object);//false
// console.log( undefined instanceof undefined);