前言

也许你经常会想知道如何优化自己的代码,除了设计模式、代码简洁、易维护之外,我们还需要考虑的一点也非常重要,尤其是检测一些逻辑的复杂性上,那就是代码的实际执行时间。

console.time(timerName)

作为常识,我们首先要知道console.time() 以及timeEnd()已经为我们提供了api,可以方便的检测代码段的执行时间,每一个计时器必须拥有唯一的名字,页面中最多能同时运行10,000个计时器,最终会返回一个代码段执行的计时:timerName:xxxms

在这个之前我们可能是通过代码开始和结束位置加入new Date()来查看时间差对比代码执行效率。

mdn参考文档:console.time

for循环

众所周知,for循环是非常低效的方式,但有些时候可能没有更好的方法找到某条件的元素,但一定要注意我们在找到匹配某条件的元素后要跳出循环,否则就会进行无意义的继续循环,降低代码的执行效率。

代码举例

function test1(){console.time(1)for(var i = 0 ; i<1000000 ;i++){if(i==99) {var temp=1continue }}console.timeEnd(1)
}function test2(){console.time(2)for(var i = 0 ; i<1000000 ;i++){if(i==99) {var temp=1break }}console.timeEnd(2)
}
test1()//268.429931640625ms
test2()//0.09326171875ms
复制代码

codepen实例

console.time案例

总结

通过以上时间的直接证明,我们可以看出某些必要的逻辑优化以及代码优化是非常必要的(比如逻辑完成时及时跳出当前逻辑尤其循环逻辑),对于代码执行效率上总结出来的一些经验可是非常宝贵的编程思想or技巧。

利用console.time优化js代码相关推荐

  1. 利用Console来调试JS程序、Console用法总结

    利用Console来调试JS程序.Console用法总结(1) 一 .什么是 Console Console 是用于显示 JS和 DOM 对象信息的单独窗口.并且向 JS 中注入1个 console ...

  2. 前端性能优化—js代码打包

    现在的 web 应用,内容一般都很丰富,站点需要加载的资源也特别多,尤其要加载很多 js 文件.js 文件从服务端获取,体积大小决定了传输的快慢:浏览器端拿到 js 文件之后,还需要经过解压缩.解析. ...

  3. 优化JS代码的34种方法(上)

    1. 含有多个条件的if语句 //longhand if(x === 'abc' || x === 'def' || x === 'ghi' || x == 'jkl'){//logic }//sho ...

  4. 如何优化js代码(2)——for循环

    2.for循环 for循环是我们经常会遇到的情况,我们先看看下面例子: ? <input type="button" value="效率低" onclic ...

  5. js判断PC端或是移动端、判断是不是微信浏览器、js代码判断浏览器种类IE、FF、Opera、Safari、chrome及版本

    ** js判断PC端或是移动端 ** 第一种 window.location.href = /Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator ...

  6. 国内两个JS加密平台,加密JS代码效果对比

    国内两个JS加密平台,加密JS代码效果对比 如题,对比国内两家JS加密平台,加密JS的效果 一.JShaman,JS加密平台 测试用JS代码: function get_copyright(){ va ...

  7. ML之SVM:基于Js代码利用SVM算法的实现根据Kaggle数据集预测泰坦尼克号生存人员

    ML之SVM:基于Js代码利用SVM算法的实现根据Kaggle数据集预测泰坦尼克号生存人员 目录 实验数据 设计思路​ 实现代码(部分代码) 实验数据 设计思路 实现代码(部分代码) /**js代码实 ...

  8. windows系统和linux系统可以使用相同的js代码吗_使用Sboxr自动发现和利用DOM(客户端)XSS漏洞...

    这一系列的博客文章将向你展示如何在单页或富JavaScript的应用程序上识别DOM XSS的问题.作为示例,我们将在DOM XSS playground(https://domgo.at)上解决10 ...

  9. html段落自动删除,利用JS代码自动删除稿件的普通弹幕功能

    事情的起因是在b站投稿了一个高级弹幕测试的视频(av9940487),但是由于b站的弹幕池机制是新的弹幕顶掉旧的弹幕,所以导致一些人发的高级弹幕很快就被顶掉了. 所以就想着写个脚本来自动删除属性为普通 ...

  10. 渗透学习-学习记录-利用浏览器的开发者工具实时修改网页前端JS代码(实现绕过)

    文章目录 前言 一.JS前端的修改 前言 最近学习了一些有关于JS脚本搭建网站方面的安全知识.通常来说JS是前端的页面代码,因此我们可以直接修改前端的JS代码来实现绕过,故我试着做了一下利用浏览器的开 ...

最新文章

  1. 【组合数学】组合存在性定理 ( 三个组合存在性定理 | 有限偏序集分解定理 | Ramsey 定理 | 相异代表系存在定理 | Ramsey 定理内容概要 )
  2. Beats Studio3录音师手机音源配置,听出好声音,听出震撼效果!勇士限量款评测!
  3. [DIV+CSS应用]澄清display:inline;与float:left;的用途
  4. go语言 不支持动态加载_动态语言支持
  5. java动态代理二cglib
  6. wordvba编程代码大全_这几本基础编程书籍一定要看
  7. 【HeadFirst设计模式——开篇】
  8. Java基础之字符如何截取?
  9. php mysql 内存表_用mysql内存表来代替php session的类_PHP教程
  10. Linux 系统服务之间 实现免密登陆
  11. Kubernetes快速部署,kubectl命令使用,资源管理
  12. tombstone 信息解析
  13. Linux学习之Makefile编写
  14. java源码之 io 流源码解读(一)
  15. 猜字游戏计算机,《C猜字游戏.doc
  16. 微信公众号实现微信支付(含前后端完整代码)
  17. H5手机端ios的缓存
  18. 打工人最怕听到的词是团建
  19. Android开发应用案例——简易计算器(附完整源码)
  20. CMS功能(简介和配置)

热门文章

  1. 如何将一个字典转换为玲阶矩阵_每日一课 | Python循环字典
  2. 消除PyCharm中满屏的波浪线
  3. 输出字符串全排列 c语言,41.输出全排列-题解(C语言代码)
  4. eos linux开发语言,EOSIO与Linux之间的区别
  5. 东宫初见计算机乐谱,东宫初见简谱歌词 曲风比较微美的抒情曲
  6. linux db2v9.7卸载,db2 卸载和安装
  7. 安庆师范大学计算机学院书记,安庆师范大学计算机与信息学院导师教师师资介绍简介-施赵媛...
  8. java执行update的方法_解决Hibernate4执行save()或update()无效问题的方法
  9. 云小蜜知识库维护的流程和维护建议
  10. Java中方法中的参数传递