void 的用法(JS/TS 笔记)
核心身份
void 有两种用法:
- JS 运算符:执行表达式后始终返回
undefined - TS 类型:标记函数无业务返回值
一、JS 里的 void 运算符
基本规则
void 表达式 → 执行表达式 → 丢弃结果 → 返回 undefined
历史写法(了解即可)
二、TS 里的 void 类型
标记函数只做副作用操作(日志、改状态、发请求),无返回值:
⚠️ 注意:(): void 是类型,void fn() 是 JS 运算符,二者无关。
三、前端最常用场景:void 异步函数
典型用法
为什么这么写?
- 明确意图:告诉读者/团队成员:我是故意不接这个 Promise,不是漏写
await - 过 ESLint:很多项目开
no-floating-promises规则,直接调用handleSubmit()会报警告,void可显式标记忽略 - 适合事件回调:
四、注意事项
❌ void 不处理错误:它只忽略返回值,不会捕获异常
五、什么时候用/不用
✅ 适合用:
- 事件回调触发异步逻辑,不需要 await 结果
- useEffect/生命周期里启动异步任务
- 需要显式标记忽略 Promise(配合 ESLint)
❌ 不适合用:
- 需要拿函数返回结果的时候
- 需要等待执行完成的时候
- 想靠它“压掉”错误提示的时候

