预期为'===',而是看到了'=='eqeqeq

时间:2019-12-13 16:11:32

标签: javascript node.js

if (customer === "new") {
  //run code
} else {
}

运行此条件时,它将运行我的代码,而实际上我在客户“ customername”中具有字符串值,并且与不等于("customername" != "new")的字符串“ new”进行比较,则在比较时不应运行该代码。 我发现使用===等于将检查类型,如果类型相同则将通过true,所以==是检查值的选项,但我在使用==时遇到了错误。

Expected '===' and instead saw '=='  eqeqeq

1 个答案:

答案 0 :(得分:2)

我认为您正在使用JSHint,“ eqeqeq”是确保使用严格相等运算符的一种选择。

来自here

  

JSHint eqeqeq选项用于禁止使用等号   运算符==和不等于运算符!=。强制使用   严格相等运算符(改为===和!==)。严格   平等算子首先不同于非严格算子   比较每个操作数的类型,而不是尝试强制   他们到一个普通的类型。在以下示例中,我们利用   非严格相等运算符,用于检查值是否为null   或未定义