首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

no-arrow-condition

该规则在ESLint v2.0中已被删除,并由无混淆箭头规则和非常量条件规则的组合取而代之

箭头函数(=>)是在语法一些比较运算符(类似><<=,和>=)。此规则警告不要在预期有条件的地方使用箭头函数语法。即使箭头函数的参数用parens包裹,此规则仍会警告它。

下面是一个例子,其中使用=>最有可能是一个错字:

代码语言:javascript
复制
// This is probably a typo
if (a => 1) {}
// And should instead be
if (a >= 1) {}

还有一些情况下,使用=>可能是模棱两可的,应该重写,以更清楚地表明作者的意图:

代码语言:javascript
复制
// The intent is not clear
var x = a => 1 ? 2 : 3
// Did the author mean this
var x = function (a) { return a >= 1 ? 2 : 3 }
// Or this
var x = a <= 1 ? 2 : 3

规则细节

此规则的错误代码示例:

代码语言:javascript
复制
/*eslint no-arrow-condition: "error"*/
/*eslint-env es6*/

if (a => 1) {}
while (a => 1) {}
for (var a = 1; a => 10; a++) {}
a => 1 ? 2 : 3
(a => 1) ? 2 : 3
var x = a => 1 ? 2 : 3
var x = (a) => 1 ? 2 : 3

相关规则

  • arrow-parens
  • no-confusing-arrow
  • no-constant-condition

版本

此规则在ESLint 1.8.0中引入,并在2.0.0-beta.3中删除。

资源

扫码关注腾讯云开发者

领取腾讯云代金券