instanceof判断array类型

javascript有三种方法可以检测一个值是什么类型
1、typeof
2、instanceof
3、Object.prototype.toString

typeof 123//"number"
typeof "123"//"string"
typeof true //"boolean"
function func(){}
typeof func//"function"
typeof undefined //"undefined"
typeof window //"object"
typeof {}//"object"
typeof []//"object"
typeof null // "object"

划重点 typeofe 是无法检测数组的,数组的本质是一种特殊的对象,检验数组要用intanceof

var o={};
var a=[];
o instanceof Array // false
a instanceof Array // true

空字符串转布尔类型是false,对象和数组是true

if(''){
  console.log("true")
}
// 无输出
if([]){
  console.log('true');
}
// true
if({}){
  console.log("true")
}
// true
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容