JavaScript Booster 能替代手动重构,但仅限于识别出安全重构点时;它基于 AST 语义感知,如变量未被重赋值才提示转 const,if-else 无副作用才支持转三元。

JavaScript Booster 能不能替代手动重构?
能,但只在它识别出安全重构点的时候。它不是万能的自动重写器,而是基于 AST 的语义感知工具——比如 var str1 = 'jspang.com'; 会提示转 const,但若变量后续被重新赋值,灯泡根本不会出现;if-else 转三元表达式也要求分支无副作用(比如不调用函数、不修改外部状态)。它真正价值在于把「我知道该改,但懒得敲」变成「一点就生效」。
ESLint + Prettier 组合为什么必须配 eslint-config-prettier?
因为 ESLint 和 Prettier 的规则会打架:prettier 说「不要分号」,eslint:recommended 说「必须加分号」,保存时一个格式化、一个标红,来回拉扯。加了 eslint-config-prettier 就是告诉 ESLint:「你负责逻辑和质量检查,格式全交给 Prettier」。实际配置里,extends 数组里要把 prettier 放最后,否则前面规则会覆盖掉它的禁用项。
Quokka.js 在什么场景下比 console.log 更快定位问题?
当你需要实时观察表达式结果,又不想反复刷新页面或打断调试流程时。比如写一个数组过滤逻辑:arr.filter(x => x > 5).map(x => x * 2),光标停在这行,Quokka 立刻在注释里显示结果;改个条件,结果秒变。它不依赖运行环境,也不需要启动服务,但要注意:它默认只执行当前文件里的顶层表达式,import 进来的模块如果没导出值,可能显示 undefined。
使用 JSON Schema 验证 JSON 数据,从示例 JSON 生成 schema,并将其转换为 TypeScript 接口、Python 数据类或 Markdown 文档。
为什么 npm Intellisense 对大型项目反而容易卡顿?
它会在你输入 import 或 require 时,扫描 node_modules 下所有包的 package.json 和入口文件来补全名称。项目依赖多(比如含 @types 和 devDependencies),扫描路径指数级增长,VSCode 主进程就会暂时无响应。缓解办法是:在 settings.json 里加 "npm-intellisense.importLineLimit": 50,限制只显示前 50 个匹配项;或者用 Auto Import 插件替代——它靠 TypeScript 语言服务推断,更准也更快。
真实项目里,插件之间不是简单叠加,而是要互相让位。比如 ESLint 报错提示和 JavaScript Booster 的灯泡同时出现,光标一动,谁先响应、谁该退后,全靠 VSCode 的命令优先级机制。这点没人明说,但你调格式时突然发现灯泡消失了,大概率是 Prettier 格式化触发了 ESLint 的临时禁用逻辑。

















