JavaScript代码规范的核心是统一协作习惯、提升可读性与可维护性,应选用ESLint+Prettier+主流规则集并坚持执行;ESLint用于静态检查,Prettier专注格式化,husky+lint-staged实现提交前自动校验,团队需从项目初期就配置并纳入CI流程。
JavaScript 代码规范的核心是统一团队协作习惯、提升可读性与可维护性,而不是追求某种“绝对正确”的写法。主流规范(如 ESLint + Prettier + Airbnb/Standard 规则集)已足够成熟,关键在于选一套、配好、坚持用。
ESLint 是目前最主流的 JavaScript/TypeScript 代码质量检查工具,能捕获潜在错误、风格问题和反模式。
npm install eslint --save-dev,再通过 npx eslint --init 交互式生成配置文件(推荐选 “To check syntax and find problems” + “JavaScript modules (import/export)” + “React” 或 “None of these” 按需)eslint-config-airbnb-base(纯 JS)、eslint-config-standard 或 @typescript-eslint/eslint-plugin(TS 项目).eslintrc.js 中启用规则时,优先用 "error" 或 "warn",避免全关("off"),尤其禁用 eval、with、未声明变量等高危项Prettier 不做逻辑检查,只专注“怎么换行、缩进、引号、分号”,解决团队间格式争论。
npm install prettier --save-dev,加 .prettierrc 配置(常见配置如 {"semi": true, "singleQuote": true, "tabWidth": 2})eslint-config-prettier 关闭 ESLint 中与 Prettier 冲突的规则,再用 eslint-plugin-prettier 把 Prettier 当作 ESLint 规则运行靠人手动跑检查容易遗漏,建议用 husky + lint-staged 在 git commit 前自动执行。
npx husky-init && npm install,它会自动生成 .husky/pre-commit
npx lint-staged
lint-staged:在 package.json 加字段,例如:"lint-staged": { "src/**/*.{js,jsx,ts,tsx}": ["eslint --fix", "prettier --write"] }
工具只是辅助,真正起作用的是团队共识和持续执行。
.eslintrc.js 和 .prettierrc 提交进仓库,确保所有人用同一套规则npm run lint 步骤,不通过则禁止合并// eslint-disable-next-line no-console),但需加注释说明原因
:规范的价值不在“多酷”,而在减少沟通成本、让新人快速上手、让老代码依然可读可改。