繁体   English   中英

在JavaScript提示中添加正数和负数

[英]adding numbers in positive and negative numbers in a javascript prompt

我正在尝试在网页上编写一个脚本,该脚本向用户展示一个算术问题(例如2 + -4),并使用提示询问答案。 然后使用警告框向他们提供反馈。 到目前为止,整数必须在-10到10之间,但我没有尝试过:

var num = Math.Floor((Math.random() * -10) + 10);
var numPrompt = prompt("what is " + (num + num));
alert(numPrompt);

然后我尝试:

var num = Math.Floor((Math.random() * -10) + 10);
var numPrompt = prompt( "what is " + (parseInt(num) + parseInt(num)) );
alert(numPrompt); 

都失败了,但是为什么呢?

这类似于您想要的东西:

var num1 = Math.floor((Math.random() * -21) + 11);
var num2 = Math.floor((Math.random() * -21) + 11);
var userAnswer = prompt('What is ' + num1 + ' + ' + num2 + '?');
if (userAnswer.trim() !== '' && +userAnswer === num1 + num2) {
    alert('Correct');
} else {
    alert('Wrong');
}

由于num1和num2是由Javascript生成的数字,因此我们可以简单地将数字+ userAnswer与num1 + num2进行比较。

进行+ userAnswer的原因是userAnswer变量包含提示函数返回的答案,它是一个字符串,因此在其前面加上+号会将其转换为数字。

我比parseInt更喜欢+ userAnswer,因为parseInt('5a')返回5,而+'5a'返回0。

我们唯一需要注意的是+''或+''返回0,因此我们必须进行其他检查以确保用户不只是按Enter而不输入数字。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM