那怎么区分是数组还是对象呢
有四种方法:
以上三种推荐第二种,其他两种在某些情况会有问题。
不过低版本浏览器不支持。可以手动实现:
参考资料
继承模式,命名空间,对象枚举(下)
JS中判断对象是对象还是数组的方法
js里判断变量是数组还是对象的四种方法
js数组与对象的区别var arr=[{name: 'cst', age: '18'}, {name: 'jc', age: '20'}, {name: 'dxm', age: '50'} , {name: 'dcg', age: '30'}];
let brr=arrfilter(n => {
return nnameindexOf('c')>-1;
})map(a => {
aage=(Number(aage)+1)toString();
return a;
});
consolelog(brr);本来判断一个对象类型用typeof是最好的,不过对于Array类型是不适用的
可以使用 instanceof *** 作符
var arrayStr=new Array("1","2","3","4","5");
alert(arrayStr instanceof Array);
当然以上在一个简单的页面布局里面是没有问题的,如果是复杂页面情况,入获取的是frame内部的Array对象,可以用这个函数判断:
function isArray(obj) {
return ObjectprototypetoStringcall(obj) === '[object Array]';
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)