javascript - 如何通过其值jquery增加一个数字
问题描述
我有一个按钮,单击该按钮时,它应该采用一个随机数,并在单击该按钮时将其原始值添加回其当前值。例如,如果随机数 (var diamondGuess) 为 10,则数字 10 首先出现在 div (id="d-num-test") 中。每当您单击按钮时,应将 10 添加到 div 中显示的数字值。直到回合重置,随机数函数才会选择新的随机数。
因此,如果我从 10 开始并单击按钮,页面上的 div id="d-num-test" 应该更改为 20。再次单击它是 30,然后是 40,等等......我尝试研究各种运算符和数学方法,但我得到的最接近的是 +=。如果 10 不是随机选择,这将起作用。我尝试使用变量本身 +=,但它以指数方式翻倍(使用上面的示例为 10、20、40、80)。
任何建议将不胜感激!新手在这里
谢谢!奥利弗
$(document).ready(function() {
var diamondNum = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
var diamondGuess = diamondNum[Math.floor(Math.random() * diamondNum.length)];
var diamondNumDom = $('#d-num-test');
diamondNumDom.text(diamondGuess);
$('#diamond').on("click", function() {
diamondNumDom.text(diamondGuess += diamondGuess);
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="d-num-test"></div>
<button id="diamond"></button>
解决方案
为了防止覆盖您的diamondGuess
值,您需要引入一个附加变量(diamondValue
在下面的代码段中)来跟踪当前值:
$(document).ready(function() {
var diamondNum = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];
var diamondGuess = diamondNum[Math.floor(Math.random() * diamondNum.length)];
var diamondValue = diamondGuess;
var diamondNumDom = $('#d-num-test');
diamondNumDom.text(diamondValue);
$('#diamond').on("click", function() {
diamondValue += diamondGuess;
diamondNumDom.text(diamondValue);
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="d-num-test"></div>
<button id="diamond"></button>
推荐阅读
- java - 如何在另一个 LinkedList 的末尾分配一个 LinkedList 的一部分?
- r - 长到宽格式聚合 R tidyverse
- python - 如何在python中将字节转换为字符
- python - 在 PySpark RDD 上应用自定义文件解析器
- html - 如何将 div 与 img 对齐?
- powershell - 在 Windows Docker 容器中运行 Visual Studio C++ 2017 编译的可执行文件
- python - KeyError: 'image_url' Traceback (last recent call last) 烧瓶 api 响应错误
- android - 如何检查和使用 Google Play 服务 更新的安全性 在反应原生应用程序中提供以保护应用程序免受 OpenSSL 漏洞的影响
- apache-kafka - Nest.JS CQRS:有没有办法通过在后台使用 Kafka 或 RabbitMQ 使命令总线和队列在外部?谢谢
- mdx - MDX - 显示此 MDX 查询的维度标签/值