gpt4 book ai didi

javascript - 如何用 JavaScript 文字表示法创建关联数组

转载 作者:行者123 更新时间:2023-12-02 23:01:18 26 4
gpt4 key购买 nike

我知道 JavaScript 中没有关联数组,只有对象

但是,我可以使用括号表示法创建一个带有字符串键的数组,如下所示:

var myArray = [];
myArray['a'] = 200;
myArray['b'] = 300;
console.log(myArray); // Prints [a: 200, b: 300]

所以我想在不使用括号表示法的情况下做完全相同的事情:

var myNewArray = [a: 200, b: 300]; // I am getting error - Unexpected token:

这也不起作用:

var myNewArray = ['a': 200, 'b': 300]; // Same error. Why can I not create?

最佳答案

JavaScript 没有关联数组,只有对象。即使 JavaScript 数组基本上也只是对象,只是属性名称是数字 (0,1,...)。

所以先看看你的代码:

var myArray = []; // Creating a new array object
myArray['a'] = 200; // Setting the attribute a to 200
myArray['b'] = 300; // Setting the attribute b to 300

了解 myArray['a'] = 200; 很重要与myArray.a = 200;相同 !

所以从你想要的开始:您无法创建 JavaScript 数组并在一条语句中不向其传递任何数字属性。

但这可能不是您所需要的!也许您只需要一个 JavaScript 对象,它与其他语言中的关联数组、字典或映射基本相同:它将字符串映射到值。这可以轻松完成:

var myObj = {a: 200, b: 300};

但重要的是要了解这与您所做的略有不同。 myObj instanceof Array将返回false ,因为myObj不是 Array 的祖先在原型(prototype)链中。

关于javascript - 如何用 JavaScript 文字表示法创建关联数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37515959/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com