typeof 与 instanceof 区别

typeof

typeof 是一元运算符,返回值是字符串,且只能是number,string,boolean,object,function,undefined

typeof用来判断一个值是否存在

if(typeof(a)!=='undefined'){
    alert('yes')
}

typeof(window)		//object

如果用if(a)判断,就会因为a未定义而报错

对于ArrayNull,typeof一律返回object

instanceof

instanceof是双元运算符,用来判断一个变量是否是某个对象的实例

var arr = new Array();

console.log(arr instanceof Array);	//true
posted @ 2018-01-16 14:17  zhangce  阅读(138)  评论(0编辑  收藏  举报