javascript - Socket.io 发送数组时出错

标签 javascript arrays object socket.io

我有 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按预期接收。

对象 { 宽度:720,高度:1040 }

但是,接收的第二个变量如下所示:

数组[对象,对象]

接收到的第三个对象如下:

对象 { 1:对象,2:对象}

有没有办法正确接收这些变量/对象?

最佳答案

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

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

firefox console

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

关于javascript - Socket.io 发送数组时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30885027/

相关文章:

javascript - 是的,验证是字符串或字符串数​​组

javascript - 循环是否会导致分支预测

c - 按值传递数组

java - 从包中读取数据是否比从硬盘驱动器上的文件夹中读取数据慢?

javascript - 如何获取条形图宽度(以像素为单位)

javascript - Google 自定义搜索 - 根据查询字符串进行搜索

javascript - Jquery 用数组制作上下文菜单

javascript - 对于 JSON 对象,将值合并到具有相同 id 的数组中

python - 如何检查实例化类属性类型?

javascript - AngularJS - 是否可以从代码编译和链接模板?