Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Node.Js中搜索套接字的最佳方法是什么?_Javascript_Node.js_Networking - Fatal编程技术网

Javascript 在Node.Js中搜索套接字的最佳方法是什么?

Javascript 在Node.Js中搜索套接字的最佳方法是什么?,javascript,node.js,networking,Javascript,Node.js,Networking,我有一个叫做“玩家”的数组。 我通过以下方式推送加入服务器的每个套接字: players.push(socket); 我使用此方法搜索其他套接字: for (let i = 0; i < players.length; i++) { if (socket != players[i]) { ... } } 但我不明白,请有人给我解释一下:) 谢谢,对不起,我的英

我有一个叫做“玩家”的数组。 我通过以下方式推送加入服务器的每个套接字:

players.push(socket);
我使用此方法搜索其他套接字:

for (let i = 0; i < players.length; i++) {
                if (socket != players[i]) {
                    ...
                }
            }
但我不明白,请有人给我解释一下:) 谢谢,对不起,我的英语不好


*uniqid()生成随机字符串。

以后的方法将套接字存储在字符串索引上,这可以帮助您通过单次拾取访问数组中的套接字对象。就像您可以检查(players[socket.socketID]){…}一样,它消除了您对数组的迭代需要。如果我们想找到其他套接字(而不是当前套接字),我们必须这样做吗?如果(players[socket.socketID]!=socket.socketID){…}对吗?就这一点而言,您可以迭代查找所有其他socket我有点困惑。。。当我记录“玩家类型[socketID]”时,它会显示未定义。到底是什么样的球员[socketID]:D
var socketID = uniqid();
if( !players[ socketID ] ) players[ socketID ] = socket;
socket.socketID = socketID;