Javascript 编辑器在我的代码上向我抛出警告、错误消息

Javascript 编辑器在我的代码上向我抛出警告、错误消息,javascript,debugging,Javascript,Debugging,错误消息:应为条件表达式,但看到的是赋值 有人知道它为什么向我抛出这个“消息”吗?event=plugin.settings.events[i]正在for语句中分配 应为条件表达式,而应为赋值 这正是它所说的。for语句中的中间表达式通常是某种条件表达式,但您使用了赋值。编辑认为=是一个打字错误,应该是=或== 在您的情况下,它(大概)不是一个输入错误:您确实希望在该点执行赋值,并且它在for语句中起作用,因为在JS中赋值仍然计算为for可以视为真实或错误的值。有些人认为这种错误的做法,因为乍一

错误消息:应为条件表达式,但看到的是赋值


有人知道它为什么向我抛出这个“消息”吗?

event=plugin.settings.events[i]
正在for语句中分配

应为条件表达式,而应为赋值

这正是它所说的。
for
语句中的中间表达式通常是某种条件表达式,但您使用了赋值。编辑认为
=
是一个打字错误,应该是
=
==

在您的情况下,它(大概)不是一个输入错误:您确实希望在该点执行赋值,并且它在
for
语句中起作用,因为在JS中赋值仍然计算为
for
可以视为真实或错误的值。有些人认为这种错误的做法,因为乍一看,它看起来像一个错字,虽然在第二眼看来,它显然不是。

因此,您可以为重写
,以便在该点上不执行作业。或者您可以忽略错误/警告消息-这不是实际的JS错误,这是一个样式问题

关于如何“重写”的建议确实要删除该消息吗

如果
plugin.settings.events
是一个数组或类似数组的对象,其中没有任何虚假值(或未定义的元素),则可以执行以下操作:

for ( var i = 0, event; event = plugin.settings.events[i]; i++ ) {
for(变量i=0,事件;i
这是Javascript,不是Java。还是不是?谢谢你给出了一个非常清晰的答案:)注意这不是一个实际的Javascript错误。正如我所说,我的编辑器给了我一个警告/错误消息,我不知道为什么。谢谢。那么没问题了?正如我所说,不是一个熟练的开发人员。关于如何“重写它”的建议确实要删除该消息吗?感谢您的回复!就您的代码的预期工作而言,这不是一个问题。如果其他人必须维护您的代码,并且没有意识到它是有效的JS,这可能是一个问题。答案更新为一个可能的重写。。。
for ( var i = 0, event; event = plugin.settings.events[i]; i++ ) {
for (var i = 0, event; i < plugin.settings.events.length; i++ ) {
    event = plugin.settings.events[i];
    // etc.