随笔 - 502  文章 - 1 评论 - 6 阅读 - 37万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

Java调JS

JDK1.8 中Nashorn 比JavaScript性能更好

复制代码
  public static void main(String[] args) {
        long s = System.currentTimeMillis();
        String a = "function d(a, b){ return a+b; } \n d(1,2)";
        for (int i = 0; i < 100; i++) {
            System.out.println("JavaScript" + i +" : " + cal(a));
        }

        System.out.println("用时:" + (System.currentTimeMillis() -s ));
        s= System.currentTimeMillis();
        for (int i = 0; i < 100; i++) {
            System.out.println("Nashorn" + i +" : " + cal2(a));
        }
        System.out.println("用时:" + (System.currentTimeMillis() -s ));
    }

    private final static ScriptEngine jse = new ScriptEngineManager().getEngineByName("JavaScript");
    private final static ScriptEngine jse2 = new ScriptEngineManager().getEngineByName("nashorn");
    public static Object cal(String expression){
        try {
            return jse.eval(expression);
        } catch (ScriptException e) {
            e.printStackTrace();
        }
        return null;

    }
    public static Object cal2(String expression){
        try {
            return jse2.eval(expression);
        } catch (ScriptException e) {
            e.printStackTrace();
        }
        return null;
    }
复制代码

 

https://blog.csdn.net/al_assad/article/details/60584351

posted on   1161588342  阅读(214)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示