JRE与节点性能

时间:2018-12-13 18:21:48

标签: javascript java node.js performance

我有一个快速的问题。 为什么这段代码中Javascript的速度几乎是Java代码的两倍? Java代码:

print browser.get_log('browser')[-1]['message']

JavaScript代码:

public class Main{

  public static void main(String[] args){
        long startTime = System.currentTimeMillis();
        double sum = 0.0;
        for(double i=1; i<=100000; i++){
            for(double j=1; j<=10000; j++){
                sum += i/j;
            }
        }
        long endTime = System.currentTimeMillis();
        System.out.println(sum + " [" + (endTime-startTime) + "ms]");
    }
}

Terminal screenshot

据我了解,Java在计算方面应该更快,因此这是Java随时可以击败节点的地方。您能举一些关于Java在性能方面优越的例子吗?谢谢

1 个答案:

答案 0 :(得分:1)

这不是一段特别现实的代码,但是,看来Java并不是循环展开内部循环。我尝试过

        for(double j=1; j<=10000; j+=2){
            sum += i/j;
            sum += i/(j + 1);
        }

速度是原来的两倍。

我建议您尝试一个更现实的示例。