2013-12-19 77 views
1

我正在构建一个简单的游戏,试图教我自己js/jQuery,并且无法让我的代码的这部分运行。 Firebug说在“endGame”函数后面有一个语法错误。如果我删除分号,Firebug会将错误移至下一行。我不知道我做错了什么。我仔细研究过,看看其他格式的语句是如何格式化的,并且无法发现问题。提前致谢。Javascript语法错误

var cs = current_score, 
ts = total_score; 

function score(){ 
if($('.col_1 div .picked').hasClass('x'||'w')) { 
    if($('.col_2 div .picked').hasClass('x'||'w')) { 
     cs += 25; 
     if($('.col_3 div .picked').hasClass('x'||'w')) { 
      cs += 75; 
      if($('.col_4 div .picked').hasClass('x'||'w')) { 
       cs += 225; 
       if($('.col_5 div .picked').hasClass('x'||'w')) { 
        cs += 675; 
        if($('.col_6 div .picked').hasClass('bonus_2')) { 
         cs += 2000; 
        }else if($('.col_6 div .picked').hasClass('bonus_5')) { 
         cs += 5000; 
        }else{} 
       } 
      } 
     } 
    } 
}else if($('.col_1 div .picked').hasClass('y'||'w')) { 
    if($('.col_2 div .picked').hasClass('y'||'w')) { 
     cs += 25; 
     if($('.col_3 div .picked').hasClass('y'||'w')) { 
      cs += 75; 
      if($('.col_4 div .picked').hasClass('y'||'w')) { 
       cs += 225; 
       if($('.col_5 div .picked').hasClass('y'||'w')) { 
        cs += 675; 
        if($('.col_6 div .picked').hasClass('bonus_2')) { 
         cs += 2000; 
        }else if($('.col_6 div .picked').hasClass('bonus_5')) { 
         cs += 5000; 
        }else{} 
       } 
      } 
     } 
    } 
}else {} 
function endGame(); 
}; 
+0

这是什么'function endGame(); };'??? –

+0

在函数分数里面声明函数endgame? –

+1

在发布语法错误之前,请通过http://jshint.com/或http://jslint.com运行您的代码。 – megawac

回答

0

在调用endGame()之前删除函数,并在结尾处使用分号。 然后解决所有语法错误。

+0

谢谢,伙计。在声明一个函数和调用它之间感到困惑。我同意所有意见,说明逻辑中还存在其他错误,但至少修复语法可让我运行其余代码来处理逻辑。 – jsilver951

0

你缺少一个}后您}else {}

那是你的function score(){没有被关闭

0
function endGame(); 
}; 

也许应该是如果你把更多的东西一样

function endGame() { 

    } 
}; 

'功能'在某个单词前面,你正在声明一个函数。如果你不是试图声明一个函数,而是简单地运行一个已经存在于其他地方的函数,只需通过endGame();来调用它。

除此之外,你还有其他许多错误..你真的需要简化你如何开始。这不是我想要处理的:)