gpt4 book ai didi

javascript - 接受两个数字并返回两个数字之间的随机数的函数。 (JavaScript)

转载 作者:行者123 更新时间:2023-11-28 00:05:07 25 4
gpt4 key购买 nike

学习 JavaScript 已经几周了,我正在尝试编写一个函数,提示用户输入 2 个数字,并在它们之间生成一个随机数。我写了这段代码,

function randomInt(min,max) {

var min = prompt( "Enter a number." );
var max = prompt( "Enter another number." );
var randNum = Math.floor(Math.random() * (max - min + 1)) + min;

return randNum;

}
alert(randomInt());

它确实提示我输入数字,但它生成一个随机数字,而不是我输入的两个数字之间的数字。就像我输入 5 和 20 一样,它返回 31 或 2,但是当尝试时,

var min = 5;
var max = 20;

它有效,实际上给了我一个 5 到 20 之间的数字,但不知道为什么。这似乎是一个简单的任务,但却被难住了。

最佳答案

prompt()函数返回字符串,而不是数字。您可以使用一元 + 强制将值解释为数字。运算符:

    var min = +prompt("Enter a number.");
var max = +prompt( "Enter another number." );

没有这个,外部 +运算符将优先执行字符串连接操作,因为右侧操作数 ( min ) 是字符串。也就是说,在这个表达式中:

    Math.floor(Math.random() * (max - min + 1)) + min

- max - min 中的运算符将导致它作为数字减法正确完成。然而,外+如果 min 将最小值添加回随机数,则将执行字符串连接而不是数字加法。是一个字符串。因此,您最终会得到一个介于 0 和隐含范围之间的随机整数,并连接到最小值(作为字符串)。

关于javascript - 接受两个数字并返回两个数字之间的随机数的函数。 (JavaScript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31420474/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com