“JS 日志占用空间过大”通常出现在前端埋点 / 控制台日志 / 本地存储日志 / Node 服务日志等场景。下面按常见原因 + 解决方案给你一个实用清单。
console.log 打印过多或打印大对象console.logresponse、state、DOM、大数组localStorage / IndexedDB 无清理debugerror / warn / info / debug 全量输出console 使用// 开发环境才打印
if (process.env.NODE_ENV !== 'production') {
console.log('debug info')
}
或封装日志:
const logger = {
debug: (...args) => {
if (import.meta.env.DEV) console.debug(...args)
}
}
// ❌
console.log(res)
// ✅
console.log(res.code, res.msg)
const LEVEL = 'warn' // production
// 只保留最近 100 条
const logs = []
function addLog(log) {
logs.push(log)
if (logs.length > 100) logs.shift()
}
sendBeaconnavigator.sendBeacon('/log', blob)
pino(高性能)winstonlog4js// pino-roll
pino({ roll: { file: 'app.log', size: '10m' } })
logger.level = 'info'
如果你能说清楚是:
我可以直接帮你给一套针对性方案或代码。