JS——判断数组

来源:互联网 发布:剪切的数据怎么恢复 编辑:程序博客网 时间:2024/06/06 05:12
//如何判断一个对象是不是数组类型,有几种方式var obj1={},obj2=[],obj3=new Date(),obj4={};obj4.__proto__ = obj2;console.log(  //不严格Array.prototype.isPrototypeOf(obj1),Array.prototype.isPrototypeOf(obj2),Array.prototype.isPrototypeOf(obj3),Array.prototype.isPrototypeOf(obj4));console.log(  //不严格obj1 instanceof Array,obj2 instanceof Array,obj3 instanceof Array,obj4 instanceof Array);//DNA 最严格方式?!console.log(/*obj1.toString(),obj2.toString(),obj3.toString(), //各个的值不同,因为多态obj4.toString()*/console.log(Object.prototype.toString.call(obj1)=="[object Array]"),console.log(Object.prototype.toString.call(obj2)=="[object Array]"),console.log(Object.prototype.toString.call(obj3)=="[object Array]"),console.log(Object.prototype.toString.call(obj4)=="[object Array]"));//ES5 Array.isArray(obj) 原理是上面的第三种 严格console.log(Array.isArray(obj1),Array.isArray(obj2),Array.isArray(obj3),Array.isArray(obj4))

原创粉丝点击