在函数上使用数组有什么优点和缺点

时间:2016-08-11 14:18:36

标签: javascript arrays

如果以下两种方法最好/最实用?

var arr = (new function (){
    this.Foo = "Foo";
    this.Bar = "Bar";
});

OR

var arr = new Array (
    Foo = "Foo",
    Bar = "Bar"
)

据我所知,上述两个都可以添加属性, 请注意,目前没有上述代码的应用,所以没有关于问题的背景,但哪个更受欢迎?感谢

2 个答案:

答案 0 :(得分:1)

第一个代码片段定义了一个对象的构造函数,该对象具有名为FooBar的属性,然后立即用new实例化它。

第二个代码片段创建一个包含元素"Foo""Bar"的数组(并在此过程中创建两个新的全局变量FooBar,您可能不会这样做我想)。

您是否希望具有两个属性的对象或具有两个元素的数组取决于您。

答案 1 :(得分:0)

两者都非常糟糕。 首先等于var arr = {Foo: "Foo", Bar: "Bar"}

在第二个你创建数组,但当你在Foo = "Foo"内部实际声明全局变量Foo时,因为Foo = "Foo"是一个表达式,它返回数组元素的"Foo"