JS的eval 函数, 给个表达式做参数, 返回表达式的值。
Java的脚本引擎可以实现这个功能。
例子:
拼接一个字符串 \uxxxx, Unicode的十六进制编码, 然后把它打印出来。 即输入一个‘\u5236‘ 字符串, 然后输出一个中文Unicode字符“制”。
package test; import javax.script.ScriptEngine;import javax.script.ScriptEngineManager;import javax.script.ScriptException; public class ScriptEngineDemo { public static void main(String[] args) throws ScriptException { ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine se = manager.getEngineByName("js"); String str = "\‘\u5236\‘"; // 传 "\u5236", JS是认不出来的。 传"\‘u5236\‘" String result = (String) se.eval(str); System.out.println(result); } }
时间: 2024-10-01 03:09:20