1

我目前正在创建一个本机 Web 应用程序,该应用程序从 UIWebView 拦截 JavaScript 事件,并通过修改后的 url 字符串来回转换数据,类似于此处描述的方法 ( http://adoptioncurve.net/archives/2012/09/calling-objective -c-methods-from-javascript-in-a-uiwebview/)。在其中一个拦截点,我得到了一组我需要解析的 JSON 对象,在搜索了几个小时后我不知所措。

将 JSON 对象解析为字符串是我需要在注入的 javascript 文件中执行的操作,还是有某种方法可以将对象传回(使用此实现)到我的 Objective-c 类并在那里处理解析?如果需要在 javascript 文件中完成,我将如何完成?由于这不是一个真正的网络浏览器,我不能简单地调用 JSON.parse() 因为没有必要的库。

for (var i = 0; i < jsonData.length; i++)
{
    var jsonString = jsonData[i];
    alert('jsonData :' + jsonString);
}

execute('communicateWithApp://event=' + jsonData);
4

1 回答 1

0

如果要将 JSON 对象转换为字符串,请尝试http://www.json.org/js.html 。


您可以直接使用 javascript 解析 JSON,不需要额外的库。

var myJSONObject = eval('(' + myJSONtext + ')');

您还可以使用 NSJSONSerialization 在 Objective-C 中解析 JSON 字符串。您可以先使用 NSString 的方法 dataUsingEncoding: 或其他方法将字符串覆盖到 NSData。

于 2013-04-17T01:34:38.890 回答