溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

java怎樣調(diào)用javascript方法?

發(fā)布時間:2020-05-21 11:38:43 來源:億速云 閱讀:398 作者:Leah 欄目:編程語言

java怎樣調(diào)用javascript方法?相信很多剛?cè)腴Tjava的新手對此束手無策,通過這篇文章分享的示例代碼,希望你能找到解決的方法。

js方法如下:

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

調(diào)用方法如下:

package com.cgnb.dataqualitymng;
 
import java.io.FileReader;
import java.util.Scanner;
 
import javax.script.Bindings;
import javax.script.Invocable;
import javax.script.ScriptContext;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
 
public class ExecuJs {
	public static void main(String[] args) throws Exception {
 
		// 獲取JS執(zhí)行引擎
		ScriptEngine se = new ScriptEngineManager().getEngineByName("javascript");
		// 獲取變量
		Bindings bindings = se.createBindings();
		bindings.put("number", 3);
		se.setBindings(bindings, ScriptContext.ENGINE_SCOPE);
		Scanner sc = new Scanner(System.in);
		while (sc.hasNextInt()) {
			int a = sc.nextInt();
			int b = sc.nextInt();
			System.out.println("輸入的參數(shù)【" + a + "】 + 【" + b + "】");
			se.eval(new FileReader("D:\\desk\\test.js"));
			// 是否可調(diào)用
			if (se instanceof Invocable) {
				Invocable in = (Invocable) se;
				Integer result = (Integer) in.invokeFunction("add", a, b);
				System.out.println("獲得的結(jié)果:" + result);
				
			}
 
		}
 
	}
}

調(diào)用結(jié)果如圖:

java怎樣調(diào)用javascript方法?

看完上述內(nèi)容,你們掌握java調(diào)用javascript的方法了嗎?如果還想學到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI