java中執行js代碼


要在java中執行js代碼,首先明白,java不支持瀏覽器本身的方法。支持自定義的js方法,否則會報錯

 

先新建一個js文件:jsss.js

內容如下:

  

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

 

 

 

然后在java中寫代碼:

 

public class ZipTest {
    
    public static void main(String[] args) throws Exception {
        
          ScriptEngineManager manager = new ScriptEngineManager();
          ScriptEngine engine = manager.getEngineByName("js");
          String jsFileName="G:\\javaPro\\zmwmcc\\WebRoot\\jsss.js";
          FileReader reader = new FileReader(jsFileName);   // 執行指定腳本   
          engine.eval(reader);   
          if(engine instanceof Invocable) {    
          Invocable invoke = (Invocable)engine;    // 調用merge方法,並傳入兩個參數    
          Double c = (Double)invoke.invokeFunction("aa", 2, 3); //調用了js的aa方法
          System.out.println(c);          
      }
 
           // engine.eval("alert(\"js alert\");");    // 不能調用瀏覽器中定義的js函數 // 錯誤,會拋出alert引用不
    }
}

 

最后運行的結果為5.0

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM