我最近一直在学习一些javascript,发现你可以在这样的数组中存储不同的数据类型:
var myArray = [12, 23.5, "hello", true];
Run Code Online (Sandbox Code Playgroud)
我有一些Java背景,这在Java中是不可能的,因为你必须声明数据类型,否则你会得到一个错误(int myArray = blah blah blah)
所以我的问题是,在什么情况下你会使用它代替一个对象.例子很棒.谢谢.
任何非强类型语言都是如此.您的数组成员可以是不同的基元,也可以是对象.在大多数情况下,您不希望使用它,因为阵列没有明确的结构.你宁愿有这样的东西:
var data = {
prop: 12,
otherProp: 24.5,
stringProp: "hello",
boolProp: true
};
Run Code Online (Sandbox Code Playgroud)
尽管可以在数组中存储不同的数据类型,但这被认为是一种糟糕的编程风格,因为数组根据定义是同构数据结构。
如何以统一的方式处理这样的数组:
[ 2.5 , [ 1, 2 ], ["a", "b", "c"], {min: 2, max: 5} ]
Run Code Online (Sandbox Code Playgroud)
为了
数组中有不同的类型似乎并不自然,不是吗?