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

相关推荐
步行cgn2 分钟前
Vue 事件修饰符详解
前端·javascript·vue.js
vvilkim11 分钟前
Flutter 状态管理基础:深入理解 setState 和 InheritedWidget
前端·javascript·flutter
Magnum Lehar18 分钟前
wpf3d游戏引擎前端ControlTemplate实现
前端·游戏引擎·wpf
早该学学了1 小时前
el-tabs问题解决大总结
前端
星河丶1 小时前
useEffect的清理函数的执行时机
前端·react.js
CAD老兵1 小时前
从 npm 到 Yarn 到 pnpm:JavaScript 包管理工具的演进之路
前端
星河丶1 小时前
React 的“组件即函数”理念
前端
星河丶1 小时前
什么是React中的副作用
前端·react.js
星河丶1 小时前
React 组件化的设计思想如何提升代码复用性
前端·react.js
猩猩程序员1 小时前
Cargo使用指南 - 使用 Cargo 的第一步
前端