数字游戏 - 提高两个数字

时间:2016-03-02 10:07:13

标签: javascript

问题

  1. 每2秒间隔,两个数字(即数字1和数字2)将生成包含5到6整数值的随机数。

  2. 对于生成的每个随机数,2秒间隔将减少0.1秒。

  3. 随机速度文本将显示生成的每个随机数的当前秒间隔。

  4. 一旦间隔达到0.8秒,javascript警告框将显示消息“间隔已达到0.8秒”。

  5. 当用户取消警报时,随机速度文本将重置为初始值,并重新开始为每个间隔随机生成的两个数字的速度。

  6. 当前代码

    var no1, no2, correctScore, wrongScore, missedScore, generatedNum, delay
    generateTotal = 30;
    
    function updateScreen(disabled) {
    $('#correctScore').text(correctScore);
    $('#wrongScore').text(wrongScore);
    $('#missedScore').text(missedScore);
    $('#generatedNum > span').text(generatedNum);
    $("#number1 > span").text(no1);
    $("#number2 > span").text(no2);
    $(":input").val(generatedNum >= generateTotal ? "START!" : "MATCH!");
    $(":input").prop('disabled', disabled);
    }
    
    function generate() {
    if (no1 == no2 && !$(":input").prop('disabled')) ++missedScore;
    if (generatedNum >= generateTotal) {
    updateScreen(false); // needed to show missedScore.
    if (confirm('The interval has reached 0.8 seconds')) start();
    return; // exit
    }
    no1 = 5 + Math.floor(Math.random()*2);
    no2 = 5 + Math.floor(Math.random()*2);
    ++generatedNum;
    updateScreen(false);
    setTimeout(generate, delay *= 0.95);
    }
    
    function start() {
    correctScore = wrongScore = missedScore = generatedNum = 0;
    delay = 2000;
    updateScreen(true);
    generate();
    }
    
    function check() {
    if (generatedNum >= generateTotal) return start(); // Start pressed
    if (no1 == no2) {
    ++correctScore;
    } else {
    ++wrongScore;
    }
    updateScreen(true); // disable button
    }
    
    $(function(){
    $(":input").click(check);
    start();
    });
    
    $(function(){
    $(":input").click(check);
    start();
    });
    

0 个答案:

没有答案
相关问题