Javascript if语法

时间:2011-12-17 10:53:10

标签: javascript jquery

我在尝试运行简单的if语句时出现语法错误

  

[打破此错误]});

左侧无效分配 [打破此错误]容器+ =

我的问题是什么 以及如何制作:

if this.ewCount != 0 then {}  
elseif NotDoneh == 0 then {} 
ELSE {}

这是我目前的代码:

var conta = '<div>';
$.each(items, function () {
    if (this.ewCount != 0) {

        if (DoneWidth == 0) {
            conta += '<br/>dddddddddddddddddd<br/><br/>' +
        });
        if (NotDoneh == 0) {
            conta += '<br/>dddddddddddddddddd<br/><br/>' +
        });
    });

    container += '</div>' +

5 个答案:

答案 0 :(得分:2)

删除if块的尾随花括号后的括号。

 if (NotDoneh == 0) {   conta += '<br/>dddddddddddddddddd<br/><br/>' + 
 });

应该是

 if (NotDoneh == 0) {   conta += '<br/>dddddddddddddddddd<br/><br/>' + 
 } // <-- No ); <-- This is not a smiley, but a parenthesis + semicolon.

答案 1 :(得分:0)

if (this.ewCount != 0) {
  if (DoneWidth == 0) {
    conta += '<br/>dddddddddddddddddd<br/><br/>';
  }
  if (NotDoneh == 0) {
    conta += '<br/>dddddddddddddddddd<br/><br/>';
  }
}

答案 2 :(得分:0)

var conta = '<div>';
    $.each(items, function () {
       if (this.ewCount != 0) 
       {
          if (DoneWidth == 0) {
          conta += '<br/>dddddddddddddddddd<br/><br/>'
          }

          if (NotDoneh == 0) {
          conta +=  '<br/>dddddddddddddddddd<br/><br/>'
           }
        }  

       else{ //here you do the else  }
     });

答案 3 :(得分:0)

elseif NotDoneh == 0 then {} 

您在JS中没有elseif,您应该使用else if代替:

else if NotDoneh == 0 then {} 

答案 4 :(得分:0)

获取伪代码:

if this.ewCount != 0 then {}  
elseif NotDoneh == 0 then {} 
ELSE {}

并将其转换为JavaScript:

if (this.ewCount != 0) {
   // do something
} else if (NotDoneh == 0) {
   // do something else
} else {
   // do something else again
}

在你的实际JS中有几个问题,主要是你在某些行的末尾有+运算符而后面没有其他运算符,并且当你使用});关闭每个if语句时他们应该只有} - 我认为你已经把这与你需要关闭$.each的方式混淆了,因为它是一个带有函数作为参数的函数调用所以它需要是$.each(items,function() { });

我不确定如何重写你的JS,因为它有一个if (DoneWidth == 0)测试不在你的伪代码中 - 是应该嵌套在第一个if,还是......?无论如何,如果你将它更新为如下所示,它至少应该是有效的,即使不是正确的算法:

$.each(items, function () {
    if (this.ewCount != 0) {
        // note the following if is nested inside the one above: not sure
        // if that's what you intended, but it gives a good example of
        // how to do something like that
        if (DoneWidth == 0) {
            conta += '<br/>dddddddddddddddddd<br/><br/>';
        }
    } else if (NotDoneh == 0) {
            conta += '<br/>dddddddddddddddddd<br/><br/>';
    } else {
        // you don't seem to have any code to go in the final else,
        // unless it was meant to be
        container += '</div>';
    }

    container += '</div>';
 }); // note here }); is correct because the } closes the anonymous function
     // and then the ); finishes off the $.each(...

你可以将它与我上面显示的if / else结构放在一起,和/或以其他方式移动东西,以便正确的代码位于右边的if或else。