在线文档教程
JavaScript
错误 | Errors

Errors: Equal as assign

Errors: Equal as assign

信息

Warning: SyntaxError: test for equality (==) mistyped as assignment (=)?

错误类型

SyntaxError warning in strict mode only.

什么地方出了错?

有一个任务(=),当你通常期待一个测试的平等(==)。为了帮助调试,JavaScript(启用严格警告)会警告这种模式。

例子

在条件表达式中分配

建议不要在条件表达式(如if...else)中使用简单的赋值,因为在查看代码时,赋值可能会与等式混淆。例如,不要使用下面的代码:

if (x = y) { // do the right thing }

如果您需要在条件表达式中使用赋值,通常的做法是在赋值处添加额外的括号。例如:

if ((x = y)) { // do the right thing }

否则,您可能打算使用比较运算符(例如=====):

if (x == y) { // do the right thing }