Javascript 约翰·雷西格';s性能函数
我想测试我的js代码的性能,我正在寻找johnresig在书中提供的Javascript 约翰·雷西格';s性能函数,javascript,jquery,performance,unit-testing,Javascript,Jquery,Performance,Unit Testing,我想测试我的js代码的性能,我正在寻找johnresig在书中提供的perf函数。有人知道如何创建这样的函数或简单函数(与John的perf相同)而不是使用测试库吗 以下是他的工作原理: perf('my test', function(){ // code to test for performance }) 我在google或book的代码中找不到它。我没有这本书,也不知道这里到底是什么意思,但类似于python的timeit可能是这样的: perf = function(fn) {
perf
函数。有人知道如何创建这样的函数或简单函数(与John的perf
相同)而不是使用测试库吗
以下是他的工作原理:
perf('my test', function(){
// code to test for performance
})
我在google或book的代码中找不到它。我没有这本书,也不知道这里到底是什么意思,但类似于python的timeit可能是这样的:
perf = function(fn) {
var times = 1000;
if (parseInt(arguments[0]) > 0) {
times = parseInt(arguments[0]);
fn = arguments[1];
}
var d = new Date();
while (times--) fn();
return new Date() - d;
}
用法:perf(myFunc)或perf(5000,myFunc)我没有这本书,也不知道这里到底是什么意思,但类似于python的timeit可能是这样的:
perf = function(fn) {
var times = 1000;
if (parseInt(arguments[0]) > 0) {
times = parseInt(arguments[0]);
fn = arguments[1];
}
var d = new Date();
while (times--) fn();
return new Date() - d;
}
用法:perf(myFunc)或perf(5000,myFunc)在Mathias Bynens和John David Dalton的文章中描述了许多简单的基准模式。这是一本好书 此外,对于那些感兴趣或希望获得比OP更简单的测试套件的人,这里有一些:
- (这是jsPerf使用的,也是由Mathias Bynens和John David Dalton发起的)
- 或
- (由John Resig创建)
- (这是jsPerf使用的,也是由Mathias Bynens和John David Dalton发起的)
- 或
- (由John Resig创建)
Mathias Bynens和John David Dalton在一篇文章中描述了许多简单的基准模式。这是一本好书 此外,对于那些感兴趣或希望获得比OP更简单的测试套件的人,这里有一些:
perf
相同的函数来测试我的代码,而不是导入测试库。我只需要一个像john这样的简单函数来测试我的js代码的性能。@Dev555看看Michael函数的内部。你会在那里找到你所需要的一切。也就是说:在函数开始时定义一个日期,完成后定义一个新日期并计算这两个日期之间的差值。结果并不准确,因为CPU几乎一直在你的脚本之外工作。这不完全符合你的要求,但有一个网站可以测试JS的性能:你读过这本书的第二章吗?@MichaelBurr:是的,我读过,但它使用了这个函数我想把这个函数用于我个人的使用,我不知道他是怎么写的。@nnnnnn:我想用与john的perf
相同的函数来测试我的代码,而不是导入测试库。我只需要一个像john这样的简单函数来测试我的js代码的性能。@Dev555看看Michael函数的内部。你会在那里找到你所需要的一切。也就是说:在函数开始时定义一个日期,完成后定义一个新日期并计算这两个日期之间的差值。结果不准确,因为CPU几乎一直在脚本之外工作。我试过了,但浏览器挂起了。您能举例说明如何在jsfiddle或jsbin上使用它吗?谢谢你。尝试降低默认的次数
值,可能1000太多。我尝试了,但浏览器挂起。您能举例说明如何在jsfiddle或jsbin上使用它吗?谢谢你。尝试降低默认的次数
值,可能1000太多了。