Получение типа значения строки (JSContextvaluScript) - PullRequest
0 голосов
/ 18 мая 2018

Я запускаю некоторый код, который вводится пользователем в JSContext, и оцениваю его.Я хотел бы иметь возможность получить тип оцениваемого результата.Я попробовал несколько вещей (см. Ниже), но это не похоже на работу.Любые предложения о том, как это сделать?Очень бы не хотелось разбирать строку и пытаться классифицировать ее таким образом, потому что я допускаю сложные структуры, например, array.length будет Int, а не Array, поэтому потребуется совсем немного кода.

let context = JSContext()!
let ans = context.evaluateScript(value) // need type for this

if let typeCheck = ans as? String {
     // always fails               
}

let y = "1"
print(x is Int) // false
print(type(of: y) == type(of: 1)) // false

1 Ответ

0 голосов
/ 18 мая 2018

В зависимости от контекста js, вы можете использовать WKWebView для оценки java-скрипта.что-то вроде этого

self.webView.evaluateJavaScript (self.scriptValue)

Дайте мне знать, если это поможет, или вам нужно что-то спросить.

...