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 的使用

相关推荐
石金龙7 小时前
[译] Composition in CSS
前端·css
白水清风7 小时前
微前端学习记录(qiankun、wujie、micro-app)
前端·javascript·前端工程化
Ticnix7 小时前
函数封装实现Echarts多表渲染/叠加渲染
前端·echarts
用户22152044278007 小时前
new、原型和原型链浅析
前端·javascript
阿星做前端7 小时前
coze源码解读: space develop 页面
前端·javascript
叫我小窝吧7 小时前
Promise 的使用
前端·javascript
NBtab8 小时前
Vite + Vue3项目版本更新检查与页面自动刷新方案
前端
天天扭码8 小时前
来全面地review一下Flex布局(面试可用)
前端·css·面试
用户458203153178 小时前
CSS特异性:如何精准控制样式而不失控?
前端·css
libraG9 小时前
Jenkins打包问题
前端·npm·jenkins