js不要在循环中使用 console.log

普通情况

js 复制代码
console.time('test')
let count = 1_000_000
let a = 0

for (let i = 0; i < count; i++) {
    console.log(i);
    a++
}

// test: 25563.049072265625 ms
console.timeEnd('test')

上面情况比较耗时, 当循环次数越多, 则耗时越久

改为如下

js 复制代码
console.time('test')

let count = 1_000_000
for (let i = 0; i < count; i++) {
    if(i === count -1) {
       console.log(i);
    }
}
// 耗时 test: 1.897216796875 ms
console.timeEnd('test')
js 复制代码
let count = 1_000_000
let a = 0

for (let i = 0; i < count; i++) {
    a++
}

单纯的做js的业务逻辑操作, 这里100万次的执行,其实也还是很快的, 毫秒级完成

从耗时对比上看,console 日志输出确实会影响 js的执行性能, 其实还是 存在I/O 操作和处理, 导致执行效率下降, 频繁的调用 console.log 会占用 CPU 和内存资源

所以, 在比较复杂/执行次数多(达到1w+ 次) 要尽量避免 console.log 的使用

相关推荐
松堂飞萤11 分钟前
Web开发(二)CSS3基础与进阶
前端·css·css3
嵌入式郑工13 分钟前
ssh,samba,tftp,nfs服务安装和配置
java·前端·ssh
创意锦囊13 分钟前
服务端渲染(SSR)与客户端渲染(CSR)详解
前端
林涧泣40 分钟前
【Uniapp-Vue3】onShow和onHide钩子的对比和执行顺序
前端·vue.js·uni-app
阿珊和她的猫1 小时前
CSRF(跨站请求伪造)深度解析
前端·csrf
疯狂的沙粒2 小时前
如何将一个数组转换为字符串?
开发语言·前端·javascript·柔性数组
lifelalala2 小时前
多个页面一张SQL表,前端放入type类型
前端
网络安全queen2 小时前
Web 学习笔记 - 网络安全
前端·笔记·学习
Lojarro2 小时前
【Vue】Vue组件--上
前端·javascript·vue.js
answerball2 小时前
💥Babel:前端魔法师的炼金术,让你的代码“返老还童”!👴➡️👶
前端·javascript·react.js