1. 先来试试typeof
- typeof {}; // 返回字符串"object"
- typeof []; // 返回字符串"object "
- typeof function(){}; // 返回字符串"function"
- typeof null; // 返回字符串"object"
- typeof undefined; // 返回字符串"undefined"
2.总结
- typeof {}和typeof []的结果都是object,
- 对象是对象,数组也是对象,js中万物皆对象,
- so,通过简单的typeof运算符是不能判断一个数组
3.方法
let a=[]
- a instanceof Array //true
- Array.prototype.isPrototypeOf(a )
- Object.prototype.toString.call(a ) //[object Array]
- Array.isArray(a)
-
a.constructor===Array
代码实现
网友评论