1

この質問に関係のない理由で、js ファイル内で定義された JavaScript 関数を .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;
}

同じ結果を得るには、プラス関数をどのように呼び出す必要がありますか?

4

1 に答える 1

1

value プロパティを呼び出しており、a と b がオブジェクトであることaを意味します。bその関数を次のように呼び出すことができます

Dim suma As Integer = aux.Evaluate("plus({value:2},{value:3})")
于 2015-05-28T09:19:28.860 に答える