我一直在用Javascript阅读:
根据我的结论,Array.isArray()应该为所有内容返回true(前面提到了原始异常)。我明白了什么错?
谢谢!
答案 0 :(得分:2)
Object和Array之间存在差异。 数组实际上是数组对象。它具有与其他对象不同的方法。 String是String 对象。但是,您可以像访问数组一样访问对象。采取以下对象
var obj = {
value1: 'Some Value',
value2: 'Some Other Value'
};
你可以获得像
这样的值obj['value1'];
obj['value2'];
这并不意味着它是数组对象,它只是有不同的访问方式
isArray()检查对象是否为数组对象,如果可以访问它 数组
答案 1 :(得分:1)
Array(a [[Class]] - javascript中的类型)与Associative Array(抽象数据类型)不同,Array.isArray
检查对象是否是普通数组,如({}).toString.call( obj ) === "[object Array]"
中所示
- 如果Type(arg)不是Object,则返回false。
- 如果arg的[[Class]]内部属性的值是“Array”,则返回true。
- 返回false。
醇>