可读代码不是「写得漂亮」,而是三个月后的你、以及同事,能在短时间内理解意图。下面五个习惯,改动成本低,收益却很稳。
1. 用名字说清楚「是什么」
避免 data、info、temp、flag 这类空心词。宁可长一点:
// 较弱
const list = await fetch(url);
// 更清晰
const activeOrders = await fetchActiveOrders(url);
布尔值用 is / has / can 开头,读起来像自然语言。
2. 一个函数只做一件事
如果函数名里需要「并且」,往往该拆。例如「请求数据并且渲染并且上报」可以拆成三步,主流程一眼能扫完:
async function refreshDashboard() {
const summary = await loadSummary();
renderSummary(summary);
trackView('dashboard');
}
3. 先写「正常路径」,再处理边界
过早堆满 if 会让主逻辑淹没。可以早返回:
function getDisplayName(user) {
if (!user) return '访客';
if (!user.nickname) return user.id;
return user.nickname.trim();
}
4. 注释写「为什么」,别写「做了什么」
代码已经说明做了什么时,注释重复只会过期。值得写的是约束、取舍、外部约定:
// 支付回调可能重复投递,必须幂等;以 orderId 去重
await markPaidOnce(orderId);
5. 保持局部一致
同一文件里:错误处理方式、异步风格(async/await vs 链式)、命名语言(中英)尽量统一。一致性降低阅读切换成本,比「局部最优却风格分裂」更重要。
可读性是给未来省时间。多花两分钟起名,往往能省半小时调试。
小结
不必一次追求完美架构。从命名、拆函数、早返回、有用注释、风格一致这五件事做起,代码会自然变得好读。等习惯稳了,再谈更大的模块边界也不迟。