JavaScript 书写规范详解 —— 编写高质量、可维护的代码
·
在现代前端开发中,JavaScript 不仅是构建交互式网页的核心语言,还广泛应用于后端(Node.js)、移动端(React Native)、桌面应用(Electron)等多个领域。随着项目规模的增长,良好的代码规范 成为团队协作和长期维护的关键。
本文将详细介绍 JavaScript 的常见书写规范,帮助你写出结构清晰、可读性强、易于维护的代码。
一、命名规范
| 类型 | 命名规则 | 示例 |
|---|---|---|
| 变量名 | 小驼峰(camelCase) | userName, currentIndex |
| 常量名 | 全大写 + 下划线 | MAX_COUNT, API_URL |
| 函数名 | 小驼峰(camelCase) | getUserInfo(), calculateTotal() |
| 类名 | 大驼峰(PascalCase) | User, ShoppingCart |
| 布尔值变量 | 以 is, has 开头 |
isLoading, hasPermission |
二、代码结构规范
- 缩进:使用 2 或 4 个空格(推荐使用 2),避免使用 Tab。
- 分号:建议始终使用分号,避免自动插入分号带来的潜在问题。
- 括号:使用 K&R 风格(大括号放在控制语句同一行):
if (condition) { // do something } else { // do something else } - 每行代码长度:建议不超过 80 或 120 个字符,便于阅读。
三、变量与函数规范
- 变量声明:使用
const和let代替var,避免变量提升带来的问题。 - 函数声明:优先使用函数表达式或箭头函数(特别是在回调中):
const add = (a, b) => a + b; - 参数限制:函数参数建议不超过 3 个,避免复杂性。
- 单一职责原则:一个函数只做一件事,提高可测试性和复用性。
四、注释规范
- 单行注释:用于解释代码逻辑或说明变量用途。
// 计算总价格 const totalPrice = price * quantity; - 多行注释:用于复杂函数或模块说明。
/** * 获取用户信息 * @param {string} userId - 用户 ID * @returns {Object} 用户对象 */ function getUserInfo(userId) { // ... }
五、模块与导入导出规范
- 模块化开发:将功能拆分为多个模块,提高可维护性。
- 导入顺序:
- 第三方库
- 本地模块
import React from 'react'; import axios from 'axios'; import Header from './components/Header'; import Footer from './components/Footer';
六、错误处理规范
- 使用
try...catch捕获异常,避免程序崩溃。 - 对异步函数使用
async/await+try...catch:async function fetchData() { try { const res = await fetch('https://api.example.com/data'); return res.json(); } catch (error) { console.error('获取数据失败:', error); } }
七、使用 Lint 工具
推荐使用 ESLint 或 Prettier 来统一团队代码风格,自动格式化代码,减少人为错误。
八、总结
遵循 JavaScript 的书写规范,不仅能提高代码的可读性和可维护性,还能提升团队协作效率。规范不是束缚,而是通往高质量代码的阶梯。
建议团队统一制定代码规范,并结合 Lint 工具进行自动化检查,确保代码风格一致。
更多推荐
所有评论(0)