使用 isNaN
注意:此规则是
recommended
规则集的一部分。在
deno.json
中启用完整集合{ "lint": { "rules": { "tags": ["recommended"] } } }
使用 Deno CLI 启用完整集合
deno lint --rules-tags=recommended
通过将其添加到
deno.json
中的include
或exclude
数组,可以将此规则明确地包含或排除在当前标签中的规则之外。{ "lint": { "rules": { "include": ["use-isnan"], "exclude": ["use-isnan"] } } }
禁止将值与NaN
进行比较。
因为NaN
在 JavaScript 中是独一无二的,它不等于任何值,包括它自身,所以将值与NaN
进行比较的结果会令人困惑。
NaN === NaN
或NaN == NaN
的求值结果为false
NaN !== NaN
或NaN != NaN
的求值结果为true
因此,此规则要求您使用isNaN()
或Number.isNaN()
来判断值是否为NaN
。
无效示例
if (foo == NaN) {
// ...
}
if (foo != NaN) {
// ...
}
switch (NaN) {
case foo:
// ...
}
switch (foo) {
case NaN:
// ...
}
有效示例
if (isNaN(foo)) {
// ...
}
if (!isNaN(foo)) {
// ...
}