java执行javascript

package org.script;

import javax.script.Invocable;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;

public class ScriptEngineManagerDemo {
	
	
	
	public static void main(String[] args) {
		ScriptEngineManager sem = new ScriptEngineManager();    /*script引擎管理*/
        ScriptEngine se = sem.getEngineByName("javascript");           /*script引擎*/
        try {
        	
        	se.eval(" var strname = 'Key' ") ;                     /* 执行一段script */
        	
        	se.eval("function sayHello(   ) { "  
                    + " print('Hello '+strname+'!');return 'my name is '+strname;" + "}");   /* 添加一个方法*/
        	
        	Invocable invocableEngine = (Invocable) se ; 
            String callbackvalue=(String) invocableEngine.invokeFunction("sayHello" );   /*调用方法中的函数*/
            System.out.println( callbackvalue ) ;              /** 打印返回值*/
            
            
		} catch (Exception e) { 
			e.printStackTrace();
		}  
        
	}
}



输出结果:

java执行javascript_第1张图片










你可能感兴趣的:(JavaScript)