You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过TypeScript或ESLint规则禁止箭头函数的默认返回?

检测箭头函数隐性默认返回的方案

ESLint 规则

  • arrow-body-style:配置为["error", "as-needed"],强制箭头函数在仅返回表达式时使用简洁写法(不加{});如果加了大括号包裹函数体,就必须明确写return语句,否则直接触发报错。
    配置示例(.eslintrc.js):
    module.exports = {
      rules: {
        "arrow-body-style": ["error", "as-needed"]
      }
    };
    
  • consistent-return:检查函数是否所有代码分支都有返回值,对于用了大括号却未写return的箭头函数,会触发警告或错误。

TypeScript 编译选项

使用TypeScript时,开启noImplicitReturns编译选项即可,在tsconfig.json中配置:

{
  "compilerOptions": {
    "noImplicitReturns": true
  }
}

开启后,只要函数(包括箭头函数)存在无返回值的代码路径,就会抛出编译错误,刚好能检测到你遇到的这类问题——加了大括号却漏写return的箭头函数。

你写的错误代码:

activeRegion = regions.find( region => { region.countryCode === activeCountryCode } )

这里大括号包裹了函数体但未写return,JS默认返回undefined,导致find无法找到匹配项。上述规则和配置都能在编码阶段就发现这个隐性问题,避免bug产生。

内容的提问来源于stack exchange,提问作者chrispepper1989

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 13:30:04