簡體   English   中英

正確使用比較運算符

[英]Using Comparison Operators correctly

我是HTML新手,之前曾使用Eclipse for Java。 下面我試圖讓用戶輸入一個數字(0-5)並讓計算機嘗試猜測它。

我看了這個,看起來似乎是聲音,我從未做過的唯一事情就是在循環結束時將一個項目等於另一個項目。

也是第一次在HTML/JavaScript使用not語句( is it !== or !=? )。

HTML

<p>How many fingers am I holding up?</p>
<input id="fingers"></input>
<div>
    <button id="button">Input fingers</button>
</div>

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;
        }
    }
}

我是獨立學習這個以備將來使用,希望你能幫忙! 謝謝。

你沒有帶id cg html元素,所以這行沒有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

我試圖糾正你的代碼,我最終得到了這個,希望它有所幫助:

<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>
<script type="text/javascript">
    var i = 0;
    var cg = 0;

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

            if (parseInt(cg) !== parseInt(fingers.value)) {
                alert("Wrong we found " + cg);
                i = cg;
            } else {
                alert("The number of fingers is " + cg);
                break;
            }
        }
    }
</script>

檢查你的ID! 你的JS試圖找到一個標識為'cg'的元素,但我看到的唯一ID是'button'和'fingers'。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM