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 相关文章推荐
popdiv
Jul 14 Javascript
jQuery 使用手册(四)
Sep 23 Javascript
javascript多种数据类型表格排序代码分析
Sep 11 Javascript
一个基于jquery的文本框记数器
Sep 19 Javascript
编写自己的jQuery提示框(Tip)插件
Feb 05 Javascript
基于replaceChild制作简单的吞噬特效
Sep 21 Javascript
JavaScript 对象深入学习总结(经典)
Sep 29 Javascript
推荐阅读的js快速判断IE浏览器(兼容IE10与IE11)
Dec 13 Javascript
使用layui 渲染table数据表格的实例代码
Aug 19 Javascript
JS如何生成动态列表
Sep 22 Javascript
Vue3.0写自定义指令的简单步骤记录
Jun 27 Vue.js
JS实现刷新网页后之前浏览位置保持不变示例详解
Aug 14 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/11/25 PHP
详解php比较操作符的安全问题
2015/12/03 PHP
在WordPress的文章编辑器中设置默认内容的方法
2015/12/29 PHP
php传值和传引用的区别点总结
2019/11/19 PHP
PHP7 新增常量
2021/03/09 PHP
使弱类型的语言JavaScript变强势
2009/06/22 Javascript
在JavaScript中获取请求的URL参数[正则]
2010/12/25 Javascript
JavaScript利用构造函数和原型的方式模拟C#类的功能
2014/03/06 Javascript
Ubuntu中搭建Nodejs开发环境过程分享
2014/06/01 NodeJs
jQuery模拟黑客帝国矩阵效果实例
2015/06/28 Javascript
JavaScript中的原型prototype完全解析
2016/05/10 Javascript
JQuery控制图片由中心点逐渐放大效果
2016/06/26 Javascript
原生js实现网易轮播图效果
2020/04/10 Javascript
js 博客内容进度插件详解
2017/02/19 Javascript
Angular中$state.go页面跳转并传递参数的方法
2017/05/09 Javascript
js判断输入框不能为空格或null值的实现方法
2018/03/02 Javascript
angularjs 动态从后台获取下拉框的值方法
2018/08/13 Javascript
JavaScript实现动态添加、移除元素或属性的方法分析
2019/01/03 Javascript
详解element-ui表格中勾选checkbox,高亮当前行
2019/09/02 Javascript
Vue 实现输入框新增搜索历史记录功能
2019/10/15 Javascript
vue+elementui实现点击table中的单元格触发事件--弹框
2020/07/18 Javascript
Python随机生成均匀分布在三角形内或者任意多边形内的点
2017/12/14 Python
python xpath获取页面注释的方法
2019/01/14 Python
python通过TimedRotatingFileHandler按时间切割日志
2019/07/17 Python
基于python实现简单网页服务器代码实例
2020/09/14 Python
详解canvas drawImage()方法绘制图片不显示的问题
2018/10/08 HTML / CSS
Rakuten Kobo台湾:电子书、eReaders和Reading应用程式
2017/11/24 全球购物
大学生求职推荐信
2013/11/27 职场文书
如何写一份好的自荐信
2014/01/02 职场文书
《美丽的彩虹》教学反思
2014/02/25 职场文书
初三新学期计划书
2014/05/03 职场文书
森林防火标语
2014/06/23 职场文书
运动会广播稿200字(10篇)
2014/10/12 职场文书
城管年度个人总结
2015/02/28 职场文书
小学教师节活动总结
2015/03/20 职场文书
Python生成九宫格图片的示例代码
2021/04/14 Python