js中的身份不明的标识符

时间:2016-06-18 15:26:25

标签: javascript

我不明白我的错误在哪里

$('#tableId').find('tr').click( function(){
  var test = ($(this).index());
  var element = document.getElementById("morris-area-chart");
  element.parentNode.removeChild(element);
  if test == '1' {
    Morris.Area({
        element: 'morris-area-chart',
        data: orlando,
        xkey: 'period', //datetime 
        ykeys : ['retweets', 'uniqueTweets', 'exposure'], //tweets
        labels: ['Retweets', 'Unique Tweets', 'Hastag Exposure(00s)' ],
        pointSize: 2,
        hideHover: 'auto',
        resize: true
        });
    };

});

我尝试使用alert(test)打印测试变量,并显示它有一个值。那么为什么if test == '1' {总是会抛出一个错误,即使它的值为1

2 个答案:

答案 0 :(得分:1)

我假设你来自像 Python 这样的语言。 JavaScript 中if语句的正确语法是:

if(condition) {}

答案 1 :(得分:1)

代码中存在语法错误。一个javascript if语句应该包含parens。

if test == '1'更改为if (test == '1')

实际上,如果您只想检查数字if (test === 1),则应使用1,因为在javascript中,1 =='1'返回true。由于jquery的index()方法返回一个int,因此您可能不应该检查与字符串'1'的相等性。它适用于==,但这不是一个好习惯。

感谢T.J.克劳德指出我早先的措辞中的混乱。