javascript函数应具名、参数≤3个且语义清晰、保持纯度、单一职责(≤15行)、动词命名、全项目风格统一(小驼峰、const声明、eslint校验、jsdoc注释)。

JavaScript 函数定义直接影响代码是否易读、易调试、易协作。规范不是为了束缚,而是减少团队理解成本、降低运行时隐患、提升长期可维护性。
用具名函数,别依赖匿名函数
函数名会在调用栈、断点调试、错误日志中直接显示,而 anonymous 会让问题定位变慢。即使赋值给变量,也建议显式命名:
- ✅ 推荐:
const fetchData = function fetchData(url) { ... } - ❌ 避免:
const fetchData = function(url) { ... }(无名,调试时不可识别) - ⚠️ 注意:箭头函数天生无名,仅适合短小回调,不用于导出主逻辑或需独立追踪的函数
参数设计要克制且语义清晰
参数过多是函数职责扩散的信号。控制数量同时让每个参数“说得清”:
- 参数不超过 3 个;超过时改用配置对象:
createUser({ name, email, role }) - 为可选参数设默认值:
function log(message, level = 'info') { ... } - 避免在函数内修改传入的对象或数组,优先返回新结构,保持函数纯度
函数体必须单一、简短、可测试
一个函数只解决一个问题,不混杂数据处理、DOM 操作、副作用等不同层级逻辑:
- 理想长度:15 行以内;超过就考虑拆分
- 函数名用动词开头,准确表达行为:
filterActiveUsers()而非userFilter() - 避免「什么都能干」的函数,例如既校验又提交还弹提示——应拆成
validateForm()、submitForm()、showToast()
命名与风格要全项目统一
风格一致性比“某一种写法绝对正确”更重要。团队应明确并固化以下规则:
- 函数名用小驼峰:
calculateTax(),不用下划线或大驼峰 - 使用
const声明函数表达式,禁用var - 启用 ESLint + Prettier,自动检查函数长度、参数数量、命名格式等
- 所有导出函数加 JSDoc 注释(至少说明参数类型与返回值)
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











