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 相关文章推荐
Js的MessageBox
Dec 03 Javascript
用户注册常用javascript代码
Aug 29 Javascript
jquery图片不完全按比例自动缩小的简单代码
Jul 29 Javascript
开启Javascript中apply、call、bind的用法之旅模式
Oct 28 Javascript
JavaScript中的原始值和复杂值
Jan 07 Javascript
Vue.js 和 MVVM 的注意事项
Nov 07 Javascript
AngularJS中下拉框的基本用法示例
Oct 11 Javascript
VUE2 前端实现 静态二级省市联动选择select的示例
Feb 09 Javascript
Angular中使用better-scroll插件的方法
Mar 27 Javascript
详解如何解决Vue和vue-template-compiler版本之间的问题
Sep 17 Javascript
vue父子组件通信的高级用法示例
Aug 29 Javascript
Postman环境变量全局变量使用方法详解
Aug 13 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
一些PHP写的小东西
2006/12/06 PHP
破解图片防盗链的代码(asp/php)测试通过
2010/07/02 PHP
php中get_magic_quotes_gpc()函数说明
2017/02/06 PHP
PHP图片水印类的封装
2017/07/06 PHP
Thinkphp 在api开发中异常返回依然是html的解决方式
2019/10/16 PHP
imagettftext() 失效,不起作用
2021/03/09 PHP
Javascript 写的简单进度条控件
2008/01/22 Javascript
jquery之Document元素选择器篇
2008/08/14 Javascript
JavaScript数据类型检测代码分享
2015/01/26 Javascript
浅析javascript中的DOM
2015/03/01 Javascript
javascript中DOM复选框选择用法实例
2015/05/14 Javascript
Nodejs Express4.x开发框架随手笔记
2015/11/23 NodeJs
vue.js绑定class和style样式(6)
2016/12/09 Javascript
用JS实现简单的登录验证功能
2017/07/28 Javascript
BootStrap 标题设置跨行无效的解决方法
2017/10/25 Javascript
jQuery实现的点击图片居中放大缩小功能示例
2019/01/16 jQuery
vue中使用props传值的方法
2019/05/08 Javascript
vue  elementUI 表单嵌套验证的实例代码
2019/11/06 Javascript
[01:03:36]DOTA2-DPC中国联赛 正赛 VG vs Magma BO3 第二场 1月26日
2021/03/11 DOTA
[01:19:46]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第一场 2月28日
2021/03/11 DOTA
python实现抖音视频批量下载
2018/06/20 Python
Python使用ConfigParser模块操作配置文件的方法
2018/06/29 Python
PyQtGraph在pyqt中的应用及安装过程
2019/08/04 Python
HTML5印章绘制电子签章图片(中文英文椭圆章、中文英文椭圆印章)
2019/06/03 HTML / CSS
Bata印度官网:源自欧洲舒适鞋履品牌
2020/01/30 全球购物
以下的初始化有什么区别
2013/12/16 面试题
带薪年假请假条
2014/02/04 职场文书
五四演讲稿范文
2014/09/03 职场文书
村党支部书记四风问题个人对照检查材料思想汇报
2014/10/06 职场文书
门面房租房协议书
2014/12/01 职场文书
2014会计年终工作总结
2014/12/20 职场文书
年度考核登记表个人总结
2015/03/06 职场文书
2015教师年度思想工作总结
2015/04/30 职场文书
百日宴上的祝酒词
2015/08/10 职场文书
年终奖金发放管理制度,中小企业适用,拿去救急吧!
2019/07/12 职场文书
Java使用jmeter进行压力测试
2021/07/09 Java/Android