JavaScript中匿名、命名函数的性能测试
我们经常通过匿名函数(Anonymousfunction)来写回调。
简单来讲匿名即没有名字的函数,一般都立即执行。但是它与命名函数(有名字的函数)的性能如何呢?
我们可以比较一下,我们随便找一台可以执行Shell命令的计算机来使用大量函数调用看一看二者执行消耗时间:
anonymous.js
varcount=100000000 ,sum =0 while(count--)(function(){sum++})()
执行一下
$timenodeanonymous.js real 0m1.456s user 0m0.015s sys 0m0.031s
再来看看命名函数
named.js
varcount=100000000 ,sum =0
varcb=function(){ sum++ }
while(count--)cb()