判断对象是数组

Posted miumiu316

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了判断对象是数组相关的知识,希望对你有一定的参考价值。

 

 

Object.prototype.toString.call(b).slice(8,-1)

 

注:返回值为  "Array"

 

Object.prototype.toString.call(b)

 

注:返回值为  "[object Array]"  slice(8,-1)为开始点为索引8,结束点为倒数第一个即-1

 

 

获取对象类型,为什么用 Object.prototype.toString.call(obj) 而不用 obj.toString() 呢?

var c = [1,2,3,4];
undefined
c.toString();
"1,2,3,4"
Object.prototype.toString.call(c);
"[object Array]"
var d = function(){console.log(this)};
undefined
d.toString();
"function (){console.log(this)}"
Object.prototype.toString.call(d);
"[object Function]"

  如果直接使用 obj.toString() 有可能这个方法被重写了,而不是默认的,使用 Object.prototype.toString.call(a) 得到的结果更加可靠!

 

以上是关于判断对象是数组的主要内容,如果未能解决你的问题,请参考以下文章

为什么我不能在此片段中生成唯一对象数组?

错误代码:错误域 = NSCocoaErrorDomain 代码 = 3840“JSON 文本没有以数组或对象和允许未设置片段的选项开头。”

js简洁代码片段

Alamofire 文件上传出现错误“JSON 文本未以数组或对象开头,并且允许未设置片段的选项”

web代码片段

有没有办法使用相同的布局动态创建片段并向它们显示数据?