Javascript Eslint:在条件表达式中不必要地使用布尔文本
我有一个来自Web API请求的字符串变量。变量可能包含字符串Javascript Eslint:在条件表达式中不必要地使用布尔文本,javascript,eslint,Javascript,Eslint,我有一个来自Web API请求的字符串变量。变量可能包含字符串“true”或字符串“false”,或者为空 我将该值从字符串转换为实数布尔值,因为'true'!=正确: [ request.body.truncateEntities === 'true' ? true : false, request.body.truncateDomains === 'true' ? true : false, ] 这两条线都会触发eslint警告: 在条件表达式中不必要地使用布尔文字 真的有更好的方
“true”
或字符串“false”
,或者为空
我将该值从字符串转换为实数布尔值,因为'true'!=正确
:
[
request.body.truncateEntities === 'true' ? true : false,
request.body.truncateDomains === 'true' ? true : false,
]
这两条线都会触发eslint警告:
在条件表达式中不必要地使用布尔文字
真的有更好的方法来编写这段代码吗
我正在使用eslint 2.0(内置于Visual Studio中的版本)。是的,您可以直接编写:
[
request.body.truncateEntities === 'true',
request.body.truncateDomains === 'true',
]
由于比较表达式(如
request.body.truncateEntities===“true”
)的计算结果无论如何都是布尔值,因此三元条件表达式是不必要的 发生在我们当中最好的人身上:)