数组不是Javascript中的数据类型?

时间:2010-11-10 19:27:06

标签: javascript arrays types

根据Professional Javascript for Web开发人员数组不是Javascript中的数据类型:

❑   “undefined” if the value is undefined 
❑   “boolean” if the value is a Boolean 
❑   “string” if the value is a string 
❑   “number” if the value is a number
❑   “object” if the value is an object or null 
❑   “function” if the value is a function

这是对的吗?

4 个答案:

答案 0 :(得分:3)

这是正确的,Array只是object的后代。注意虽然它确实覆盖了一些内容,例如数组中的.toString()将其成员打印在逗号列表中,而不是像普通对象那样打印"[Object object]"

答案 1 :(得分:2)

我认为这是因为“数组”是一个“对象”

http://jsfiddle.net/z5Gv2/

答案 2 :(得分:1)

正如其他人所说,它被视为“对象”。您可以通过检查其构造函数是否= =到Array来测试作为数组的对象。

答案 3 :(得分:0)

数组不是Javascript中的数据类型,因为在幕后它们是具有key:value对的对象。键是索引,值是数组内容。例如

let example = ["a","b","c","d","e"]

与对象表示相同

let example = {
0: "a",
1: "b",
2: "c",
3: "d",
4: "e"
};