javascript - 使用javascript拼写游戏得分

标签 javascript

我有一个使用 JavaScript 的拼写游戏。

目前,当单词拼写正确时,它会显示一条消息。

if(++score >= str.length) {
    var text = 'Well done! The correct word is ' + str + '!'
    drawBackground(background, images.back, text);
}

我想为每个正确的单词显示一分并增加它。 这是我尝试过但没有成功的方法

function points() {
    var points = 0;    
    if(++score >= str.length) {    
        points++;
        document.getElementById("points").innerText="Score: " + points; 
    }
}

显示分数的 HTML

<p>Score: <span id="points"></span></p>

最佳答案

你的代码有问题:

  • 每次您进入points() 函数时,points 的值都会重置为0。您必须将 var points = 0 移到 points() 之外,使其成为全局变量。
  • 由于函数和全局变量不能同名,因此必须重命名 points 变量(例如,重命名为 numPoints)。
  • The el.innerText property will only work on IE .将其替换为 el.textContent

代码的改进版本:

let numPoints = 0;    

function points() {
    if(++score >= str.length) {    
        numPoints++;
        document.getElementById("points").textContent = "Score: " + numPoints; 
    }
}

关于javascript - 使用javascript拼写游戏得分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20862697/

相关文章:

javascript - Node 、Express、域、未捕获的异常 - 仍然丢失

javascript - 仅使用 JavaScript 将 Remove Class 添加到 DOM 元素,以及这两种方式中的最佳方式

php - 基于 php 下拉表单的重定向

javascript - 如何从jquery中的特定选项卡隐藏字段值中获取值

javascript - 在浏览器中显示 mp4 流媒体视频

javascript - 随机出现 ECONNREFUSED 错误

javascript - React - 来自字符串的动态属性

javascript - 使用 JavaScript 将事件动态添加到 body>

javascript - React Native中的 'this'关键字指的是 'this'的曾孙

javascript - 使用 Kinvey.Social 通过 Angular 应用程序和 Promise API 登录