js简易函数性能测试器

摘要:
如果你不想用浏览器的js性能测试工具,可以用下面这个简单的函数测试一下(1毫秒一下的就测不出来了)functiontestFn(fn,param){varstart=newDate().getTime();fn(param);varend=newDate().getTime();console.log(fn.name+"耗时:"+(end-start)+"毫秒");//IE不支持fn.name}下

如果你不想用浏览器的js性能测试工具,可以用下面这个简单的函数测试一下(1毫秒一下的就测不出来了)

function testFn(fn,param){
	var start = new Date().getTime();
	fn(param);
	var end = new Date().getTime();
	console.log(fn.name+"耗时:"+(end - start)+"毫秒"); //IE不支持fn.name
}

下面就来测试一下

var arr = [];
for(var i=0;i<10000;i++){
	arr.push(i);
}
function getSumUseFor(arr){
	var sum = 0;
	var len =arr.length;
	for(var i=0;i<len;i++){
		sum+=arr[i];
	}
	console.log(sum);
}
function getSumUseShift(arr){
	var sum = 0;
	var len =arr.length;
	for(var i=0;i<len;i++){
		sum+=arr.shift();
	}
	console.log(sum);
}
testFn(getSumUseFor,arr);
testFn(getSumUseShift,arr);

js简易函数性能测试器第1张

结果显示for的效率要明显高于shift()

================分割线===========================

1ms以内可以用console.time进行测试,代码如下

function testFn(fn,param){
	console.time("small loop");
	fn(param);
	console.timeEnd("small loop");
}

执行一段代码,结果如下:

js简易函数性能测试器第2张

console.time和console.timeEnd使用说明:

这两个函数通常一起使用,都只接受一个参数,这两个参数都是字符串,随便起,只要符合js语法即可,他会计算一段代码执行的间隔时间

免责声明:文章转载自《js简易函数性能测试器》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇linux运维、架构之路-分布式存储CephSpring Boot中@OneToMany与@ManyToOne几个需要注意的问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

EMM386和UMBPCI 区别

EMM386和UMBPCI区别 1,SupportCD-ROM[HIMEM+EMM386NOEMS].支持光驱(EMM386模式)2,SupportCD-ROM[HIMEM+UMBPCI].支持光驱(UMBPCI模式)3,SupportUSB-Disk[HIMEM+EMM386NOEMS].支持U盘/USB移动硬盘(EMM386模式)4,SupportUS...

Android程序对不同手机屏幕分辨率自适应的总结

各种Android操作系统的手机简直就是琳琅满目,屏幕分辨率的差异可想而知。目前比较主流的有WVGA=800x480,HVGA=480x320,另外的还有QVGA=320x240。当然还有魅族M9的DVGA=960x640,还有蛋疼的摩托罗拉的FWVGA=854x480。 其实,在你layout的xml文件中,编写的时候是不是用了许多的padding呢?...

测试方案包含哪些内容?

   测试策略是测试方案的其中一部分。        测试方案是从测试的角度去分析或者说分解需求,在方向上明确要怎么测,分析结果就是测试点和测试方法。        测试方案包含:        1、引言(含a、编写目的;b、预期读者;c、参考资料);        2、测试范围;       3、测试策略(根据不同的测试类型考虑不同的测试方法)    ...

关于Vware软件下Linux系统闪屏问题

原因:在安装Linux时将屏幕的分辨率设置得太高,Linux启动时试着启动图像界面,由于vware分配资源有限,启动一直失败,造成闪屏情况。 解决方法:我的最简单的方法是,在趁着其启动图像界面失败后的一小会,快速输入init 3 命令,将权限改为3,放弃图像界面启动。保存一个快照,然后再进行相关的操作,下次启动Linux时就直接恢复至快照方式。 其实闪屏就...

玩转FFmpeg的7个小技巧

原文链接:http://www.linuxidc.com/Linux/2011-06/36973.htm FFmpeg堪称音频和视频应用程序的瑞士军刀,提供了丰富的选项和灵活性.很多时候用户为了看视频和听音乐都安装了ffmeg.更多关于ffmeg的详细介绍:here,可以通过ffmpeg -formats查看FFmpeg支持的视音频格式,左侧若是E表明可...

小米手机Root

1.将手机恢复出厂设置。 2.下载对应手机版本的开发版系统,进行安装。 这里最好是下载官方版的http://www.miui.com/download.html下载之后把Rom包放在手机上,然后可以在设置的=>我的设备=>MIUI版本=》点击右上角=>手动选择安装包, 如果没有 手动选择安装包 这个选项的话,可以在设置的=>我的设备...