《benchmark 怎么写》

    目前有三个选项:+, parseInt, Number

    请测试哪个方法更快。

    1. 学习使用 benchmark 库
    2. 学习使用 http://jsperf.com/ 分享你的 benchmark

    首先去弄个 benchmark 库, 。

    这个库已经两年没有更新了,两年前发了个 1.0.0 版本,直到现在。

    用法也特别简单,照着官网的 copy 下来就好。

    我们先来实现这三个函数:

    然后照着官方的模板写 benchmark suite:

    1. var number = '100';
    2. suite
    3. .add('+', function() {
    4. int1(number);
    5. })
    6. int2(number);
    7. })
    8. .add('Number', function () {
    9. })
    10. // 每个测试跑完后,输出信息
    11. .on('cycle', function(event) {
    12. })
    13. .on('complete', function() {
    14. console.log('Fastest is ' + this.filter('fastest').map('name'));
    15. })
    16. .run({ 'async': true });

    直接运行:

    可以看到,parseInt 是最快的。

    如果想要在线分享你的 js benchmark,用这个网站:http://jsperf.com/

    比如我在上面测试 Math.log 的效率:

    点击这里:http://jsperf.com/math-perf-alsotang/edit ,就可以看到这个 benchmark 是怎么配置的,很简单。