动态接收时无法解析Json(使用socket.io)

时间:2012-07-28 23:42:55

标签: javascript jquery json socket.io

我正在接收json-datas,这是100%正确格式化的json数据。

我的问题是,

当我运行以下代码时,它可以工作:

var data = {"datas":[{"matts":{"active":"1","status":"off"},"config":null,"adapters":[]}}]};

console.dir(data); // it works.

但是当我在socket.io上收到与下面的代码相同的数据时,它不起作用:

_liveSock.on('sm', function(data)
{
    console.log(data); // I am receiving the data correctly. 
    console.dir(data); // But I cant display the data.
});

两个代码几乎是相同的逻辑,只有第二个代码是动态接收的。

当我尝试使用console.dir(数据)时;在第二个代码上,它给出了这个错误:

there is no kind object

(顺便说一句。我使用的是Firefox / Firebug)

是否有其他方法或方法可以使用动态接收的json数据?

谢谢!

1 个答案:

答案 0 :(得分:1)

解析值之前,您无法使用console.dir()

console.dir(JSON.parse(data));

JSON工具在旧版浏览器中不可用。您可以找到解析器online