Arrays .接头(x,1)不工作
我使用Node JS开始了我的第一步,事情进展顺利,直到我遇到了一个奇怪的行为,我既不理解也找不到解决方法。 它应该很简单,所有的东西都有很好的文档记录,我可以找到很多这样的例子,很遗憾,我可能遗漏了一些非常明显的东西。在失去了差不多两天后,我决定寻求一些帮助。。。提前谢谢 我试图在数组中存储对象(clientID、套接字信息),并希望在连接丢失时删除对象 我已经构建了一小部分代码来复制这种行为Arrays .接头(x,1)不工作,arrays,node.js,array-splice,Arrays,Node.js,Array Splice,我使用Node JS开始了我的第一步,事情进展顺利,直到我遇到了一个奇怪的行为,我既不理解也找不到解决方法。 它应该很简单,所有的东西都有很好的文档记录,我可以找到很多这样的例子,很遗憾,我可能遗漏了一些非常明显的东西。在失去了差不多两天后,我决定寻求一些帮助。。。提前谢谢 我试图在数组中存储对象(clientID、套接字信息),并希望在连接丢失时删除对象 我已经构建了一小部分代码来复制这种行为 var socket = require('socket.io'); var machines =
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
有什么想法吗
Thx
机器
是一个数组,因此您将“357973049420265”
--一个字符串值--设置为键.splice
只会更改数字键
我不确定您想要实现什么,但是您可以使用机器={}
并通过delete
删除属性,或者使用.push
添加数组元素以使.splice
工作
如果你使用了一个对象,你可以做
删除机器[object.keys(machines.slice(0,1)]
来做这个代码似乎想做的事情,但是你的最终目标还不清楚。非常感谢你。用你的提示解决了问题。机器。拼接(0,1)被删除机器取代[“357973049420266”]。