0

我们应该使用数组还是对象从 JavaScript 函数中获取多个变量?这还重要吗?什么被认为是这样做的最佳实践?

4

5 回答 5

2

这完全取决于您返回的数据类型。如果您要返回一个变量列表,其中包含所有相同类型的事物,因此不需要单独标识,或者如果订单很重要,那么您应该将它们放在一个数组中并返回该数组。

如果您要返回 N 个不同的东西,那么您应该将它们放在具有属性名称的对象中并返回该对象。虽然您也可以在数组中返回这些,并且只有一个隐含规则,即数组中的第一项是“x”坐标,数组中的第二项是“y”坐标,然后第三项是“宽度”依此类推,如果您使用具有命名属性的对象,代码实际标识哪个是哪个,则您的代码会更加自我记录。从长远来看,我认为这更易于维护(尤其是那些没有编写原始代码的人)。

于 2012-08-16T20:20:04.767 回答
1

使用一个对象,以便您可以命名您的返回值。

于 2012-08-16T20:18:17.177 回答
0

如果订单计数使用数组,则对象不知道其属性的顺序。请看一下这个问题,它可能会回答您的一些问题:Objects vs arrays in Javascript for key/value pair

于 2012-08-16T20:20:21.297 回答
0

如果你愿意使用 Coffescript,你可以只返回一个元组。

weatherReport = (location) ->
  # Make an Ajax request to fetch the weather...
  [location, 72, "Mostly Sunny"]

[city, temp, forecast] = weatherReport "Berkeley, CA"
于 2012-08-16T20:20:59.377 回答
0

这是经验法则:

如果您需要字符串索引或非数字索引,请0...N使用对象。

如果您不这样做,或者如果顺序很重要,请使用数组。

于 2012-08-16T20:23:07.560 回答