确实可以让 UIWebView 执行任意 JavaScript 并捕获作为结果返回的任何值。不过,我不确定我是否完全理解您正在执行的代码的性质,所以我只是演示了下面的基本方法。如果您可以提供有关您希望执行的 JavaScript 逻辑类型的更具体的详细信息,我可能会提供更多帮助。
UIWebView *webView = [[UIWebView alloc] init];
NSNumber *q1 = @20;
NSNumber *q2 = @30;
// Create a simple JavaScript addition statement.
NSString *javascript;
javascript = [NSString stringWithFormat:@"%@ + %@", q1, q2];
// Note, the result will always be an NSString
NSString *result = [webView stringByEvaluatingJavaScriptFromString:javascript];
// result is @"50"
我还想更正一些术语。您说“嵌入在 JSON 文件中的 JavaScript 代码”。实际上,JSON 符号格式只能包含名称/值对。它不能包含可执行的 JavaScript 代码。也许您的意思是说您正在从服务器加载 JavaScript 文件?
最后,当像这样执行从应用程序外部加载的代码时,您应该始终采取适当的技术设计预防措施,以防止有人试图欺骗您的应用程序加载的恶意 JavaScript。