Javascript错误:左侧的分配无效 使用AcROCAT席中的JavaScript。由于某些原因,我不断收到以下错误:
Javascript错误:左侧的分配无效 使用AcROCAT席中的JavaScript。由于某些原因,我不断收到以下错误:,javascript,Javascript,第9行左侧的无效赋值:第10行 我的代码非常简单,看起来非常简单。请回顾并告诉我我没有疯。(或者告诉我是,但你有一个解决办法:)) 两个等号: if (event.target === f1 && event.value = "On") { // -------------------------------------^^ if (event.target === f1 && event.value === "On") { if (event.targe
第9行左侧的无效赋值:第10行
我的代码非常简单,看起来非常简单。请回顾并告诉我我没有疯。(或者告诉我是,但你有一个解决办法:))
两个等号:
if (event.target === f1 && event.value = "On") {
// -------------------------------------^^
if (event.target === f1 && event.value === "On") {
if (event.target === f2 || event.target === f3 && event.value = "On") {
// ------------------------------------------------------------^^
if (event.target === f2 || event.target === f3 && event.value === "On") {
我在上面的代码中使用了三个等号来保持编码风格的一致性
正如vol7ron所建议的,您还应该在IF语句中添加括号。在我看来,这大大提高了可读性。如果(event.target==f2 | | event.target=f3&&event.value=“On”)在
f3之前,这一个也可以;事实上,我想你只是打错了;编辑。。。或者更好的方法是,在代码的其余部分之后使用严格的比较。@ScottHoltzman在同时使用&&
和|
或存在复杂条件时,使用括号(()
)也很有帮助。当在不同语言之间跳跃时,你会发现有些语言有不同的优先级规则,而paren通常在优先级上较高OoO@ScottHoltzmanf2.value=“Off”
本身是正确的,但是您不应该在IF条件下键入它(为什么需要这样做?).boo在-3上。这是一个关于javascript中平等性的合理问题,似乎没有完全意义。请参阅下面的答案和评论。这不是关于平等的问题,而是“请检查我的JavaScript”。如果你至少指出哪一行是第10行,并问一个合法的问题,为什么不允许使用=
。@Juhana->fair point。直到我得到答案,我才知道这是一个关于平等的问题。然而,如果我知道是=
标志把它扔了,我会问的,但我不知道,所以很难问你不知道什么。此外,指出第10行代码如此短似乎有些过火,只在第10行出现了中断。原因#26为什么VB*是邪恶的:它是为数不多的使用同一运算符进行相等和赋值的语言家族之一。如果你不习惯它的大脑受损语法,错误就会跳出来。@cHao->你难道不知道VB是我的起点,所以这些坏习惯根深蒂固!
if (event.target === f1 && event.value = "On") {
// -------------------------------------^^
if (event.target === f1 && event.value === "On") {
if (event.target === f2 || event.target === f3 && event.value = "On") {
// ------------------------------------------------------------^^
if (event.target === f2 || event.target === f3 && event.value === "On") {