Javascript 遍历JSON对象
我在HTML文件中有以下代码:Javascript 遍历JSON对象,javascript,jquery,json,socket.io,Javascript,Jquery,Json,Socket.io,我在HTML文件中有以下代码: socket.on('message',function(data) { console.log('Received a message from the server!',data); $('#data').append('<br />'+data.toString('utf8')); }); socket.on('message',函数(数据){ log('从服务器收到消息!',数据); $
socket.on('message',function(data) {
console.log('Received a message from the server!',data);
$('#data').append('<br />'+data.toString('utf8'));
});
socket.on('message',函数(数据){
log('从服务器收到消息!',数据);
$('#data').append('
'+data.toString('utf8'));
});
服务器在某些点向客户端发送字符串或JSON对象,但是当我尝试使用JSON语法访问数据时,例如/
$('#data').append(data.people[0].name])
它会抛出一个错误,表示人员未定义。我知道发送的数据是有效的。如何让函数理解其处理JSON的过程?如果您的数据返回为JSON字符串,那么您可能需要首先将其解析为JSON。这可以使用$.parseJSON
方法完成,如下所示:
socket.on('message',function(data) {
var myData = $.parseJSON(data);
// the remainder of your code
});
您可以在中找到有关$.parseJSON
的更多信息。另外值得注意的是,如果运行代码的浏览器具有JSON.parse
的本机实现,则$.parseJSON
方法将使用它。如果数据作为JSON字符串返回,则可能需要首先将其作为JSON进行解析。这可以使用$.parseJSON
方法完成,如下所示:
socket.on('message',function(data) {
var myData = $.parseJSON(data);
// the remainder of your code
});
您可以在中找到有关$.parseJSON
的更多信息。另外值得注意的是,如果运行代码的浏览器具有JSON.parse
的本机实现,则$.parseJSON
方法将使用它。您必须首先解析JSON数据:
json = JSON.parse(data);
json.people[0].name;
或者至少使用:
json = eval('(' + data + ')');
您必须首先解析JSON数据:
json = JSON.parse(data);
json.people[0].name;
或者至少使用:
json = eval('(' + data + ')');
你能行
socket.json.send({data:'pepew'})
在服务器端发送json时,它将被socket.io自动解码。如果您想向服务器发送json,只需执行以下操作即可
socket.json.send({data:'boom'});
:D您可以使用相同的api
socket.json.send({data:'pepew'})
在服务器端发送json时,它将被socket.io自动解码。如果您想向服务器发送json,只需执行以下操作即可
socket.json.send({data:'boom'});
:D相同的api显示的内容console.log(数据)代码>在客户端?数据。人员[0]。名称
不是“JSON语法”。如果响应是JSON,那么您必须首先将其解析为JavaScript对象代码>在客户端?数据。人员[0]。名称
不是“JSON语法”。如果响应是JSON,那么您必须首先将其解析为JavaScript对象。我收到来自服务器[object object]的消息。如果使用Jquery,则无需使用eval。Jquery可以使用它的JSON.parse的实现,也可以使用浏览器的本机实现。哦,是的,我错过了。当然,最好使用jQuery实现。。。eval是邪恶的;)如果使用Jquery,则不需要使用eval。Jquery可以使用它的JSON.parse的实现,也可以使用浏览器的本机实现。哦,是的,我错过了。当然,最好使用jQuery实现。。。eval是邪恶的;)