Socket.io 发送数组时出错

Socket.io error in sending arrays

我有 3 个变量要使用 socket.io 发送给客户端,即 mapReslocation

server.js

var mapRes = {width : 720, height: 1040};
var location = [{x:100,y:100,z:100},{x:200,y:200,z:200}];
var obj = {'1':{x:100,y:200}}, '2':{x:200,y:100}};
io.on("connection", function(socket){
    socket.emit("mapRes",mapRes);
    socket.emit("location",location);
    socket.emit("object",obj);
}

client.html

socket.on('mapRes',function(message){
    var mapRes = message;
    console.log(mapRes);
});
socket.on('location',function(message){
    var location = message;
    console.log(location);
});
socket.on('object',function (message){
    var object = message;
    console.log (object);
});

在客户端(浏览器),第一个变量 mapRes 按预期接收。

Object { width: 720, height: 1040 }

然而,接收到的第二个变量如下所示:

Array [ Object, Object]

收到第三个对象如下:

Object { 1: Object, 2: Object}

有没有办法正确接收这些variables/objects?

它可能已正确发送,您只是没有看到整个对象。

这是由于 Firefox 在登录到控制台时折叠对象:

如果单击带下划线的对象,右侧面板应打开并显示有关该对象的更多详细信息。