2010-05-27 186 views
1

我有一个JSON对象从第三方API返回的,它看起来像:在没有网络连接的情况下从字符串创建json obj?

{"version":"1.0","encoding":"UTF-8"} 

我要在我的项目上工作没有网络连接,所以我要在本地做的一切。我如何在本地创建一个json对象的实例进行测试?说我复制上面的字符串,我可以这样做:

var json = null; 
if (debugging_locally) { 
    json = new jsonObj('{"version":"1.0","encoding":"UTF-8"}'); 
} 
else { 
    json = doAjaxCall(); 
} 

doStuffWithJsonObj(json); 

,所以我只是想从一个存储字符串创建一个JSON对象,如果在本地调试 - 我该怎么办呢?

感谢

回答

3

就算这样简单:

if (debugging_locally) { 
    json = {"version":"1.0","encoding":"UTF-8"}; 
} 
0

JSON是有效的JavaScript语法。

因此,您可以将JSON直接粘贴到Javascript(而不是字符串)并将其分配给变量。

0

看一看Resig的post以及。他介绍了目前在Safari,WebKit,Chrome,Firefox的JS引擎中的一些新的JSON解析功能。

这样你可以测试一个JSON字符串,你将会从一个web服务,你的API等等中获得期望的结果。
例如。的

代替:

json = new jsonObj('{"version":"1.0","encoding":"UTF-8"}'); 

你可以这样做:

json = JSON.parse('{"version":"1.0","encoding":"UTF-8"}'); 
相关问题