javascript - 使用 Javascript 显示 2 个随机数

标签 javascript html

我这里有这段代码:

<script>
            const stored = localStorage[location.href]
            const number = stored || Math.floor(Math.random() * 6) + 2

            document.getElementById("n1").innerHTML = number

            if ( !stored ) localStorage[location.href] = number
</script>
<div>
 The first number is <span id="n1"></span>.
</div>

显示 2~6 之间的随机数并将其保存到用户的缓存中,因此如果他重新加载页面,相同的数字将再次出现。但我现在要做的是显示第二个数字,我正在尝试这样做:

<script>
            const stored2 = localStorage[location.href]
            const number2 = stored2 || Math.floor(Math.random() * 8) + 3

            document.getElementById("n2").innerHTML = number2

            if ( !stored2 ) localStorage[location.href] = number2
</script>
<div>
     The second number is <span id="n2"></span>.
 </div>

但是 <span id="n2"></span>显示的数字始终与 <span id="n1"></span> 中的数字相同.我猜这与用户缓存中的本地存储有关。如何让它显示 2 个不同的数字,但将这些数字继续存储在用户的缓存中,以便在他重新加载页面时显示相同的 2 个数字?

提前致谢

最佳答案

您已将两个数字存储在 localStorage 中的同一键 (location.href) 下,因此第二个数字将覆盖第一个数字。

您需要使用不同的键或将数字存储在 JSON 字典中并改为存储它。

关于javascript - 使用 Javascript 显示 2 个随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55622732/

相关文章:

javascript - 简单的登录系统UserController

html - 将所有内容置于 div 中间,文本位于图像的顶部和底部

javascript - 单击菜单中的元素后如何使汉堡菜单消失

html - 如何避免表格或其他 hack 将文本与 HTML 5 中的选项卡对齐?

当我使用模板时,Javascript 函数不起作用

javascript - 为什么即使我们在使用 new 关键字创建对象时手动将其更改为另一个构造函数,也会执行 A 对象的构造函数?

php - 如何检查网页是否存在。 jQuery 和/或 PHP

javascript - 比较两个复杂的 json (Javascript)

php - 为什么 "$_GET"密码错误?

javascript - 我如何将一个 div 移动到另一个 div 下面并且仍然让顶部 div 具有“位置 :fixed"?