java中執行js代碼

來源:互聯網
上載者:User

標籤:

要在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

 

java中執行js代碼

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.