Js利用console计算代码运行时间的方法示例


Posted in Javascript onSeptember 24, 2017

前言

本文主要给大家介绍了关于Js用console计算代码运行时间的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

需求

如果学习前端一定时间以后,就会考虑性能方面的问题。那么问题来了,我们怎么计算出一段代码的运行时间呢?

使用console.log配合Date对象计算

比如,我们计算sort方法排序十万个随机数组成的数组需要用多长时间的话,可以这么写:

var arr = [];
    for(var i=0; i<100000; i++){
      arr.push(Math.random());
    }
    var beginTime = +new Date();
    arr.sort();
    var endTime = +new Date();
    console.log("排序用时共计"+(endTime-beginTime)+"ms");

最后在控制台会显示:

排序用时共计552ms

下面,再介绍一种更灵活更准确的方法。

使用console.time进行时间计算

这种方法比上一种更准确,而且专门为性能产生的方法:
测试案例:

var arr = [];
    for(var i=0; i<100000; i++){
      arr.push(Math.random());
    }
    console.time("sort");
    arr.sort();
    console.timeEnd("sort");

控制台会打印出:

sort: 542.668701171875ms

这种方法在需要测试的开始位置写上console.time,并且括号内传一个字符串。在结束的位置使用console.timeEnd方法,并再次把字符串传入。

个人推荐第二种方式。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
Javascript学习笔记2 函数
Jan 11 Javascript
理解Javascript_15_作用域分配与变量访问规则,再送个闭包
Oct 20 Javascript
JavaScript判断密码强度(自写代码)
Sep 06 Javascript
BOM系列第三篇之定时器应用(时钟、倒计时、秒表和闹钟)
Aug 17 Javascript
JQuery实现图片轮播效果
May 08 jQuery
jQuery Validate表单验证插件实现代码
Jun 08 jQuery
js实现本地图片文件拖拽效果
Jul 18 Javascript
JS和JQuery实现雪花飘落效果
Nov 30 jQuery
vue-cli webpack2项目打包优化分享
Feb 07 Javascript
基于Vuex无法观察到值变化的解决方法
Mar 01 Javascript
2019年度web前端面试题总结(主要为Vue面试题)
Jan 12 Javascript
Openlayers实现距离面积测量
Sep 28 Javascript
详解Web使用webpack构建前端项目
Sep 23 #Javascript
vue webuploader 文件上传组件开发
Sep 23 #Javascript
jQuery使用zTree插件实现可拖拽的树示例
Sep 23 #jQuery
一个有意思的鼠标点击文字特效jquery代码
Sep 23 #jQuery
JQuery用$.ajax或$.getJSON跨域获取JSON数据的实现代码
Sep 23 #jQuery
VsCode新建VueJs项目的详细步骤
Sep 23 #Javascript
详解webpack + vue + node 打造单页面(入门篇)
Sep 23 #Javascript
You might like
德生PL330的评价与改造
2021/03/02 无线电
如何在PHP中使用Oracle数据库(4)
2006/10/09 PHP
关于在php.ini中添加extension=php_mysqli.dll指令的说明
2007/06/14 PHP
ThinkPHP5与单元测试PHPUnit使用详解
2020/02/23 PHP
prototype 的说明 js类
2006/09/07 Javascript
通过MSXML2自动获取QQ个人头像及在线情况(给初学者)
2007/01/22 Javascript
巧用局部变量提升javascript性能
2014/02/24 Javascript
node.js中的buffer.copy方法使用说明
2014/12/14 Javascript
JavaScript获取当前cpu使用率的方法
2015/12/15 Javascript
javascript每日必学之封装
2016/02/23 Javascript
JS组件Bootstrap Table使用实例分享
2016/05/30 Javascript
探讨AngularJs中ui.route的简单应用
2016/11/16 Javascript
简单实现js浮动框
2016/12/13 Javascript
浅谈JS对html标签的属性的干预以及对CSS样式表属性的干预
2017/06/25 Javascript
详解用webpack把我们的业务模块分开打包的方法
2017/07/20 Javascript
使用socket.io实现简单聊天室案例
2018/01/02 Javascript
对vue中v-if的常见使用方法详解
2018/09/28 Javascript
详解vue-cli@2.x项目迁移日志
2019/06/06 Javascript
vue2路由方式--嵌套路由实现方法分析
2020/03/06 Javascript
Django组件之cookie与session的使用方法
2019/01/10 Python
PyCharm 设置SciView工具窗口的方法
2019/01/15 Python
Python使用pymongo库操作MongoDB数据库的方法实例
2019/02/22 Python
Python button选取本地图片并显示的实例
2019/06/13 Python
django框架自定义模板标签(template tag)操作示例
2019/06/24 Python
10行Python代码实现Web自动化管控的示例代码
2020/08/14 Python
python中altair可视化库实例用法
2021/01/26 Python
两种CSS3伪类选择器详细介绍
2013/12/24 HTML / CSS
HTML5播放实现rtmp流直播
2020/06/16 HTML / CSS
爱护花草树木的标语
2014/06/11 职场文书
幼儿园六一亲子活动方案
2014/08/26 职场文书
机票销售员态度不好检讨书
2014/09/27 职场文书
工程竣工验收申请报告
2015/05/15 职场文书
禁毒心得体会范文
2016/01/15 职场文书
JS异步堆栈追踪之为什么await胜过Promise
2021/04/28 Javascript
springboot如何初始化执行sql语句
2021/06/22 Java/Android
Mysql分库分表之后主键处理的几种方法
2022/02/15 MySQL