js怎么判断是数组

1.不能用typeof (切记)
利用typeof除了array和null判断为object外,其他的都可以正常判断。
2.instanceof操作符
var arr = [1,2,3,1];
console.log(arr instanceof Array); // true
3.对象的constructor 属性
var arr = [1,2,3,1];
console.log(arr.constructor === Array); // true
4.使用 Object.prototype.toString 来判断是否是数组
Object.prototype.toString.call( [] ) === ‘[object Array]’ // true
5…使用 原型链 来完成判断
[].proto === Array.prototype  // true var fun = function(){}fun.proto === Function.prototype  // true
6.Array.isArray()
Array.isArray([])   // true
ECMAScript5将Array.isArray()正式引入JavaScript,目的就是准确地检测一个值是否为数组。IE9+、 Firefox 4+、Safari 5+、Opera 10.5+和Chrome都实现了这个方法。但是在IE8之前的版本是不支持的。

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页