我使用 Node JS 迈出了第一步,一切都很顺利,直到我遇到一个我既无法理解也无法找到解决方法的奇怪行为。它应该很简单,一切都有据可查,我可以找到很多这种工作的例子,不幸的是,我可能遗漏了一些非常明显的东西。在这失去了将近 2 天之后,我决定寻求一些帮助......在此先感谢。
我正在尝试将对象(clientID、套接字信息)存储在一个数组中,并希望在连接丢失时删除一个对象。
我已经构建了我的代码的一小部分来复制行为。
var socket = require('socket.io');
var machines = [];
var mach1 = [new socket(), new socket()];
var mach2 = [new socket(), new socket()];
var mach3 = [new socket(), new socket()];
machines["357973049420265"] = mach1;
machines["357973049420266"] = mach2;
machines["357973049420267"] = mach3;
console.log("Before : " + Object.keys(machines));
machines.splice(0,1);
console.log("After : " + Object.keys(machines));
结果是:
Before : 357973049420265, 357973049420266, 357973049420267
After : 357973049420265, 357973049420266, 357973049420267
有任何想法吗?
谢谢