JavaScript - 声明关联数组的简短方法

2022-08-30 14:46:05

有没有像PHP中那样声明关联数组的简短方法?

$myArray = array('a' => 'b'); // PHP Way

在JavaScript中,我会这样做:

var myArray = [];
myArray['a'] = 'b';

我不是在寻找JavaScript对象。


答案 1

声明一个对象,如下所示:

var myArray = {"a": "b", "c": "d"};

...然后像这样引用每个项目:

var somethingElse = myArray["a"]; //Sets "somethingElse" to "b".

正如@Chris和@Marc注释中提到的那样:在JavaScript中,对象是关联数组,反之亦然,它们只是指的是做同一件事的两种不同方式。例如。。。

var somethingElse = myArray["a"];
var anotherVariable = myArray.a;

...做同样的事情。


答案 2

JavaScript 没有关联数组。在您的示例中,您将声明为数组,但随后为其分配一个对象。所以你的代码与此没有什么不同:myArray

var myObject = {};
myObject['a'] = 'b';

更新:稍作更正。实际上,原始代码不会破坏数组。它只是向它附加一个常规属性。这是可能的,因为JavaScript数组是JavaScript对象的子集。