正确使用比较运算符

Jav*_*tle 4 html javascript comparison operators

我是HTML新手,之前曾使用Eclipse for Java.下面我试图让用户输入一个数字(0-5)并让计算机尝试猜测它.

我看了这个看起来似乎是合理的,我唯一没做过的就是在循环结束时将一个项目等于另一个项目.

也是第一次使用not statements(is it !== or !=?)HTML/JavaScript.

HTML

<p>How many fingers am I holding up?</p>
<input id="fingers"></input>
<div>
    <button id="button">Input fingers</button>
</div>
Run Code Online (Sandbox Code Playgroud)

JavaScript的

var i = 0;
var cg = 0;

document.getElementById("button").onclick = function() {
    while (i !== fingers) {
        cg = Math.random();
        cg = cg * 6;
        cg = Math.floor(cg);

        if (document.getElementById("cg").value !== fingers) {
            alert("Wrong we found " + cg);
            i = cg;
        } else {
            alert("The number of fingers is " + cg);
            i = cg;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我是独立学习这个以备将来使用,希望你能帮忙!谢谢.

小智 6

你没有带id的html元素cg,所以这一行失败了document.getElementById("cg").value.但是你有fingers一个html文本框.

也是第一次在HTML/JavaScript中使用not语句(是!==或!=?).

在js中,两者都有效但功能不同,!=有转换开销.例如

5 != '4' // true
5 != '5' // false

5 !== '4' // true
5 !== '5' // true

5 !== 5 // false
5 !== 4 // true
Run Code Online (Sandbox Code Playgroud)

我试图纠正你的代码,我最终得到了这个,希望它有所帮助:

<script type="text/javascript">

var cg;
var fingers = document.getElementById("fingers");

document.getElementById("button").onclick=function() {
  cg = Math.floor(Math.random()  * 6);
  if (fingers.value != cg) {
    alert ("Wrong, it was: " + cg);
  }
  else {
    alert ("Right !!");
  }
};
</script>
Run Code Online (Sandbox Code Playgroud)