简体   繁体   English

如何基于JavaScript中的数组值创建动态命名的对象

[英]How to create dynamically named objects based on array values in javascript

I have an array of string values which represent some events I want to subscribe to: 我有一个字符串值数组,它们代表一些我想订阅的事件:

[M123, M255,M345, M938...] //localMatchStore - could be of any length

I want to create a new socket.io connection for each value in the array with a dynamic name eg socket_M123, socket_M255, socket_M345, socket_M938. 我想为数组中的每个值创建一个新的socket.io连接,并使用动态名称,例如,socket_M123,socket_M255,socket_M345,socket_M938。

I then need to reference each new socket connection so that I can subscribe to the event name in my array. 然后,我需要引用每个新的套接字连接,以便可以在数组中订阅事件名称。 I need a distinct socket connection for each event. 对于每个事件,我都需要一个独特的套接字连接。

var localMatchStore= [];
for (var i in data.matches) {
    if (data.matches.hasOwnProperty(i)) localMatchStore.push(data.matches[i]);
}

How do I create a new object with a dynamic name for each array entry? 如何为每个数组条目创建一个具有动态名称的新对象?

I want to end of with a number of socket connections eg 我想结束一些套接字连接,例如

var socket = io.connect('http://'+server+':'+port+'');
socket1.emit('subscribe', { myid: 'M123'});

Could you use something like this? 你能用这样的东西吗?

myConnectionArray["socket_"+eventName] = //new socket.io connection

Everything in javascript is an associative array. javascript中的所有内容都是一个关联数组。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM