为什么它不断添加一个随机0
Why does it keep adding a random 0?
我试图用javascript构建一个MCT计算器,但在创建中值的过程中,我不断出错。这是我的代码:(请记住,我对javascript相对陌生)
var min = prompt("Enter minimum value");
var max = prompt("Enter maximum value");
if (min > max) {
alert("Error:'n'n'nMinimum value '" + min + "' is greater than Maximum value '" + max + "'");
} else {
var a = (max - min);
alert("variable a is " + max + " - " + min + " = " + a);
var b = a / 2;
alert("variable b is " + a + " / 2 = " + b);
var c = min + b;
alert("variable c is " + min + " + " + b + " = " + c);
alert("Range is " + a + "'n'nMedian is " + c + "'n'nMin is " + min + "'n'n Max is " + max);
}
如果您键入5表示最小值,键入10表示最大值,它会告诉您5大于10,但它不是。。如果你键入10表示最小值,键入15表示最大值,它的中值将是102.5,而不是12.5。我根本不明白,请帮助:)
尝试使用数字,而不是字符串:
var min = parseInt(prompt("Enter minimum value"), 10);
var max = parseInt(prompt("Enter maximum value") , 10);
或者,如果你想允许浮动:
var min = parseFloat(prompt("Enter minimum value"));
var max = parseFloat(prompt("Enter maximum value"));
这是因为字符串是根据字典进行比较的,使用的是它们的数字字符代码,而不是数字本身的值。
prompt
函数返回一个字符串,并根据字符串中每个字符的Unicode代码点(也称为词典或字母顺序)对字符串进行比较。"5"
的码点大于"1"
的码点,因此字符串"5"
实际上大于字符串"10"
(即在字典排序中位于它之后)。
尝试如下解析输入:
var min = parseFloat(prompt("Enter minimum value"));
var max = parseFloat(prompt("Enter maximum value"));
相关文章:
- 用jquery切换一个随机类
- 如何创建一个随机的计算机选项,除了你已经选择的选项
- 能够获得一个随机生成的目录名
- Javascript从数组中选择一个随机对象集
- 页面加载时显示一个随机图标
- 一个在线服务,我可以查询一个随机的历史人物的名字
- 在Javascript中从数组中挑选一个随机变量
- Javascript:创建一个随机数学方程数组作为对象,20次
- 如何在javascript中给变量一个随机值
- 如何在一个随机化的有序列表中随机化多个无序列表
- 如何从列表中突出显示一个随机单词
- JavaScript 创建一个随机表生成器并为单元格分配颜色
- 在一个随机生成图像的PHP脚本中,为什么在一个页面上多次调用它总是生成相同的图像
- 生成一个随机数字序列,然后用JavaScript在该序列后面附加一个大写字母
- JavaScript:如何从数组中检索一个随机项(锚定到另一个项)
- 如何让我的重定向脚本添加一个随机后缀来选择网站
- 为饼干键设置一个随机指数值
- 需要建议为wordpress博客作者创建一个随机名称
- 我想用javascript创建一个随机整数
- 如何从数组中选择一个随机项目