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

相关推荐
bearpping7 小时前
Nginx 配置:alias 和 root 的区别
前端·javascript·nginx
@大迁世界7 小时前
07.React 中的 createRoot 方法是什么?它具体如何运作?
前端·javascript·react.js·前端框架·ecmascript
January12077 小时前
VBen Admin Select 选择框选中后仍然显示校验错误提示的解决方案
前端·vben
. . . . .7 小时前
前端测试框架:Vitest
前端
xiaotao1318 小时前
什么是 Tailwind CSS
前端·css·css3
战南诚9 小时前
VUE中,keep-alive组件与钩子函数的生命周期
前端·vue.js
发现一只大呆瓜9 小时前
React-彻底搞懂 Redux:从单向数据流到 useReducer 的终极抉择
前端·react.js·面试
霍理迪9 小时前
Vue的响应式和生命周期
前端·javascript·vue.js
李剑一9 小时前
别再瞎写了!Cesium 模型 360° 环绕,4 套源码全公开,项目直接用
前端