来自IF()语句的令人费解的行为

时间:2015-05-11 23:25:35

标签: javascript function

我总共花了n00b到JavaScript并完全期望这是一个令人震惊的明显但我无法理解为什么这个if()语句没有产生正确的结果。

无论我输入多少个字符,该函数都会返回' yes'到了控制台是否'字'是<或者>如果(哈!)任何人都可以对此有所了解,我们非常感激。代码如下:

var word = document.getElementById('wordChoice').value;  

function flipChk () {

if (word.length < 2) {
    console.log('yes');

} else { 
    console.log('no');
}
}

请在此处查看完整实施的代码:http://supsean.com/supsean/flipr/flipr.html

2 个答案:

答案 0 :(得分:3)

您是否尝试过调试代码并查看单击按钮时word的值是什么?

我猜你问题的一部分原因是你在页面加载时为word分配了一个值,但在用户点击按钮时没有再次读取它。

答案 1 :(得分:1)

在函数中设置word

function flipChk () {
  var word = document.getElementById('wordChoice').value; 

  if (word.length < 2) {
    console.log('yes');
  } else {
    console.log('no');
  }
}

您的代码仅在页面加载时获得word的值,这是一个空字符串。这就是为什么它始终是肯定的。