test eval speed

Benchmark created by Alex on


Setup

strCalc("one + two * three / four % five * -six / -seven + eight * nine")

Test runner

Ready to run.

Testing in
TestOps/sec
eval
function strCalc(calc_str) {
        var i=10,
            nums = ['zero','one','two','three','four','five','six','seven','eight','nine'];

        while (i--) {
            while (calc_str.indexOf(nums[i]) !== -1) {
                calc_str = calc_str.replace(nums[i],i);
            }
        }
        return eval(calc_str);
}
ready
straight math
function strCalc(calc_str) {
        var i=10,
            nums = ['zero','one','two','three','four','five','six','seven','eight','nine'];

        while (i--) {
            calc_str = calc_str.replace(new RegExp(nums[i], 'g'),i);
        }
        return eval(calc_str);
}
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.