java中調用js函數的方法

        有時候由於一些不能說的原因,可能會遇到需要在java代碼中調用js函數的場景,下面就來說說如何調用吧。

        首先說明一點,java不支持瀏覽器本身的方法,只支持自定義的js方法,否則會報錯

       1. 先建一個js文件,test.js,內容如下:

function add(a,b){
    return a+b;
}

      2. 在java代碼中調用js函數

public class Test {
    
    public static void main(String[] args) throws Exception {
        
          ScriptEngineManager manager = new ScriptEngineManager();
          ScriptEngine engine = manager.getEngineByName("js");
          String jsFileName="D:\\test.js";  //js文件所在目錄
          FileReader reader = new FileReader(jsFileName);   // 執行指定腳本   
          engine.eval(reader);   
          if(engine instanceof Invocable) {    
          Invocable invoke = (Invocable)engine;    // 調用merge方法,並傳入兩個參數    
          Double c = (Double)invoke.invokeFunction("add", 1, 2); //調用了js的add方法
          System.out.println(c);          
      }
 
    }
}

        運行結果爲:3

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章