gpt4 book ai didi

javascript - 在 javascript 中使用关联数组

转载 作者:行者123 更新时间:2023-11-30 13:06:21 25 4
gpt4 key购买 nike

我想使用一个变量作为我的关联数组的索引

var usersName = []; // Just defining
userName[socket.id] = socket.name; // socket.id is an alphanumeric string

我想使用 socket.id(string) 作为 usersName 数组的自定义索引,这样我就可以获得连接到套接字的所有用户的列表.问题是我转义变量的方式(我猜)。

我已经试过了,但是没有用:

usersName ['\''+socket.id+'\''] = socket.name;

这在 PHP 中有效,但我无法让它在 javascript 中工作

感谢您的帮助。

最佳答案

你要做的基本上是这样的:

// say socket = {id: 123, name: 'Bob'};
var foo = {}; // create an object
foo[socket.id] = socket.name; // put socket.name under foo.

var i;
for (i in foo) { //loop through list
console.log(i, "is", foo[i]); //123 is Bob
}

对吧?就像发表的评论一样,JS 没有“关联数组”,而是一些更好的伪经典对象。 JavaScript 中的对象与 PHP 中的对象完全不同。在学习 JavaScript 时,您需要重新学习“对象”的含义。 javascript 中的数组并不值得骄傲。它们本质上只是扩展 Array 原型(prototype)并具有特殊“长度”属性的对象。 JS 中的数组还允许您通过执行 for(i =..; i..; i +=..) 循环来按顺序获取数据。除了 Array.prototype 的好处和能够以某种可靠的顺序加载事物列表的能力之外,数组并没有那么特别。

关于javascript - 在 javascript 中使用关联数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15581696/

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