Выполнить функцию со сложными параметрами
По несоответствующей причине для этого вопроса мне нужно вызвать функцию javascript, определенную внутри js-файла, из настольного приложения.net и получить результат.
Я использую юрский, чтобы сделать это. Однако я не знаю, как вызывать функции, которые получают сложные типы. Проще объяснить на примере.
У меня есть этот файл JS
function plus(a, b) {
return a + b;
}
Затем для вызова этой функции в.net я использую этот код:
Dim auxfile As New Jurassic.FileScriptSource(pathToPreviosJSFile)
Dim aux As New Jurassic.ScriptEngine
aux.Evaluate(auxfile)
Dim suma As Integer = aux.Evaluate("plus(2,3)")
В этот момент suma = 5. Однако, если определение функции плюс было
function plus(a, b) {
return a.value + b.value;
}
Как мне вызвать функцию плюс, чтобы получить тот же результат?
1 ответ
Решение
Вы называете значение свойством a
а также b
означает, что А и В являются объектами. так что вы можете вызвать эту функцию как
Dim suma As Integer = aux.Evaluate("plus({value:2},{value:3})")