使用控制台进行性能测试
对于前端开发人员,在开发过程中,我们经常需要监视一些表达式或变量的值。如果我们使用调试器,那就太麻烦了。最常用的方法是将值输出到控制台,以方便调试。最常用的说法是console.log(表达)。
从一个早期的Ali实习生的笔试题目开始:
函数f1(){
console.time(时间跨度);
}
函数F2(){
Console.timeEnd(时间跨度);
}
setTimeout(F1,100);
setTimeout(F2,200);
功能waitforms(N){
VAR现在= Date.now();
而(Date.now()-现在<n){
}
}
waitforms(500); / /时间跨度:0ms
让我们先谈谈控制台上的高级操作,最后一起分析这个话题。
微量
Console.trace()是用来跟踪一个函数的调用过程。
在大型项目中,特别是在框架开发中,函数的调用轨迹非常复杂。Console.trace()方法可以清晰地输出到控制台调用过程。
函数跟踪器(a){
Console.trace();
返回一个;
}
函数(a){
返回栏(a);
}
函数条(a){
返回示踪剂(a);
}
var a = foo('tracer);
表
使用控制台在表中呈现对象
传入的对象或数组可以以表格形式导出。与传统的树输出相比,这种输出方案更适合于排列整齐的对象或内部元素数组,否则可能有许多未定义的内容。
var
芙罗拉:{
名称:'floralam,
年龄:12
},
约翰:{
名称:'johnma,
年龄:45
},
瑞:{
名称:'rayguo,
年龄:'22
}
};
console.table(人);
火狐的控制台:
时间timeend
计算程序的执行时间
你可以输出运行时间代码console.time对之间的()和()console.timeend到控制台
console.time('timer);
对于(var i = 0;i < 1000;i + +){
对于(var j=0;j<1000;j + +){ }
}
Console.timeEnd('timer);
上面的代码计算console.time('timer ');和console.timeend('timer ');事件之间所需的代码块。
简况
使用控制台测试程序性能
在发展中,我们经常评价一段代码或函数的性能。在函数的时间手工印刷是当然的,但它是不灵活的错误。同控制台的帮助和console.profile()方法,我们可以很容易地监控绩效。
函数父(){
对于(var i = 0;i < 10000;i + +){
ChildA()
}
}
功能childA(J){
对于(var i = 0;i < j;i + +){ }
}
console.profile(表现分析);
父();
Console.profileEnd();
上面的代码计算console.profile(表现分析);和console.profileend();参与代码块的功能之间,效率的功能。
现在再谈谈笔试的题目。
本课题研究console.time申请人的理解和JS单线程的理解。
的console.time()语句和console.timeend()语句是用来计时的程序的执行。
setTimeout()接受两个参数,第一个是回调函数,二是毫秒,delayed.settimeout数()只是将事件写入任务队列。它必须等到执行当前代码(执行堆栈)之后,主线程才会执行指定的回调函数。
因为F1和F2由settimeout.f1设置定时器加载到一个事件队列应该执行后100ms,但因为waitforms占用线程,执行Javascript是单线程的,所以没有办法在100ms实现F1,所以需要500ms waitforms被执行,然后在F1和F2的实施,那么F1和F2几乎同时执行。
以上是本文的全部内容,希望大家能喜欢。