如何用jquery解析这个json?

如何用jquery解析这个json?,jquery,json,Jquery,Json,我正在尝试使用socket.io创建我的第一个node.js程序,我想存储聊天历史记录,然后当用户加入时,将聊天历史记录推送到他的浏览器中。我有聊天保存和推送功能,发送的json如下所示: [ [ { "username": "Warren2", "text": "Test" }, { "username": "Warren2", "text":

我正在尝试使用socket.io创建我的第一个node.js程序,我想存储聊天历史记录,然后当用户加入时,将聊天历史记录推送到他的浏览器中。我有聊天保存和推送功能,发送的json如下所示:

[
    [
        {
            "username": "Warren2",
            "text": "Test"
        },
        {
            "username": "Warren2",
            "text": "Test2"
        },
        {
            "username": "Warren2",
            "text": "Test3"
        }
    ]
]
在我的html页面上,我有一个javascript

socket.on('updatehistory', function(data) {

}
我放在那里的代码将在推送updatehistory消息时执行。我是一个n00b和相当失落的lol。这就是我尝试的:

socket.on('updatehistory', function (data) {
   $.each(json.results, function(username,text){
      $('#conversation').append('<b>'+ username + ':</b> ' + text + '<br>');
  });
});
有人能帮我弄清楚如何解析它吗(最好使用jquery)。 谢谢:D

我喜欢这个解决方案:

如果您想自己遍历数据,我会为您提供一种方法,它只需要5行代码。第一行代码就是这样。我已经提醒了用户名和密码,让您知道它在示例中确实有效


<> > < <代码> JSON.PARSER(<代码> > NO.<代码> $.PARSEJSON 正在工作。所以我认为这是最好的解决方案。

可以使用jQuery插件,例如SMTH这样:或者看一下,有一个这样的插件集合:)在所有函数都完成之后,你是否得到数据?你不喜欢吗?我得到“jSON.PARSE:意想不到的字符”我认为有一套额外的括号围绕着一切导致我的问题。不知道如何处理这个问题。请尝试使用其他工具(php/perl/anything for fast test)使用JSON。也许JSON是无效的?我在很多网站上都使用过这个库。。从来没有出现过这样的错误。我如何删除额外的括号集?json是我从node.js获得的当我将node.js的输入记录到控制台时,我得到[Object{username=“Warren2”,text=“test1”},Object{username=“Warren2”,text=“test2”},Object{username=“Warren2”,text=“test3”}@0xDECAFBAD我已经解决了您的问题,现在不需要再编辑代码了。您可以直接输入相同的字符串。我已经更新了fiddle中的代码以及上面的答案。这是小提琴链接
debug - websocket writing 5:::{"name":"updatehistory","args":[[{"username":"W
arren2","text":"Test"},{"username":"Warren2","text":"Test2"},{"username":"Warren
2","text":"Test3"}]]}
 $(document).ready(function(){
        var k=[
    [
        {
            "username": "Warren1",
            "text": "Test"
        },
        {
            "username": "Warren2",
            "text": "Test2"
        },
        {
            "username": "Warren3",
            "text": "Test3"
        }
    ]
];

for(i in k)
    {
    var l=k[i];
     for (j in l)
    {
        alert("Username:"+l[j].username+" --  Message:"+l[j].text);
    }
    }​
    });