gpt4 book ai didi

javascript - 使用 Objective C 处理嵌入在 json 中的 javascript 代码

转载 作者:行者123 更新时间:2023-11-28 02:30:57 25 4
gpt4 key购买 nike

我正在构建的 iPad 应用程序有一些由数据驱动的行为。我所说的数据,是指从服务器端发送的 json 文件中嵌入的一些 javascript 代码。

以下为例:

if ((q12+q13+q14*2-2)>0){
goto(q45);
show(q1,q2);
}else{
goto(q34);
}

从iOS端,我知道q12/13/14的值,我想执行javascript中定义的逻辑并接收结果,以便我可以执行各种界面行为。是否可以?我使用 UIWebView header 我可以从 javascript 获取结果,但我的情况是 javascript 位于 json 而不是 HTML url 中。

最佳答案

确实可以让 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"

我还想纠正一些术语。您说“JavaScript 代码嵌入到 JSON 文件中”。实际上,JSON 表示法只能包含名称/值对。它不能包含可执行的 JavaScript 代码。也许您的意思是说您正在从服务器加载 JavaScript 文件?

最后,当像这样执行从应用程序外部加载的代码时,您应该始终采取适当的技术设计预防措施,以防止有人可能试图欺骗您的应用程序加载恶意 J​​avaScript。

关于javascript - 使用 Objective C 处理嵌入在 json 中的 javascript 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14171895/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com