把两个数字加在一起,得到5+10=510,而不是15
Adding two numbers together, get 5+10 = 510 instead of 15
我刚开始学习JavaScript,我在摆弄一些代码,似乎找不到真正将两个变量相加并计算它们的和的方法。我声明3个变量,其中一个变量为答案,另外两个变量为两个数字。基本上是a,b,c,其中c=(a+b)。然而,每当我尝试运行代码时,结果都是"ab"而不是"a+b",所以如果a=5,b=10,它会说"510"而不是"15"。
所有其他符号,如"-"、"/"answers"*"都按预期工作,唯一不工作的是"+"。
我想计算机认为我正在尝试打印出这两个字符串,但我想把它们加起来,就像你在提醒某个东西时所做的那样,例如:alert("Hello World" + a);
我是朝着正确的方向思考,还是问题出在其他地方?这是源代码:
function addTwoNumbers(firstNumber,secondNumber,numberAdded){
if(numberAdded == '+'){
numberAdded = (firstNumber + secondNumber);
alert("The summ of the two numbers is equal to: " + numberAdded);
}
else if(numberAdded == '-'){
numberAdded = (firstNumber - secondNumber);
alert("The difference of the two numbers is equal to: " + numberAdded);
}
else if(numberAdded == '/')
{
numberAdded = (firstNumber / secondNumber);
alert("The 'kvot' of the two numbers is equal to: " + numberAdded);
}
else if(numberAdded == '*'){
numberAdded = (firstNumber * secondNumber);
alert("The product of the two numbers is equal to: " + numberAdded);
}
else
{
alert("I told you to use '+, -, / and *' not anything else!");
}
}
var checker = true;
while(checker == true){
alert("You will now be prompted to enter two numbers.");
var firstNumber = prompt("Please enter the first number.");
var secondNumber = prompt("Please enter the second number.");
var numberAdded = prompt("Would you like to use '+, -, /, or * ?'");
checker = false;
addTwoNumbers(firstNumber, secondNumber, numberAdded);
if(numberAdded != '+' && numberAdded != '-' && numberAdded != '/' && numberAdded != '*'){
checker = true;
}
option = 0;
while(option != 'y' && option != 'n'){
var option = prompt("Would you like to make a calculation again? (y/n)");
if(option == 'y'){
checker = true;
}
else if(option == 'n'){
checker = false;
}
else{
alert("I said (y/n), try again...");
}
}
}
prompt
函数返回一个字符串。因此,当您在两个字符串上使用+
运算符时,您将它们组合在一起。相反,将数字字符串解析为一个数字:
var firstNumber = parseInt(prompt("Please enter the first number."), 10);
var secondNumber = parseInt(prompt("Please enter the second number."), 10);
相关文章:
- 试图在引导模式内动态生成图表,得到offsetWidth错误
- 在Windows 10中自动执行例行程序(主要与浏览器交互)
- 不再使用innerHTML进行AJAX响应.(代码未得到响应)
- 如何处理10页以上的静态页眉/页脚
- 我能得到正确的格式吗
- $(document).height()在刷新时随机化值(Safari 5.1.10)
- 为什么我得到错误IE修剪方法是't支持
- 两个指令创建新的继承的和隔离的作用域-元素得到哪个
- 得到"TypeError:无法读取属性'filename'未定义的“;调用“npm start
- Ajax请求返回空的数据字符串,但首先得到了正确的数据
- 如何每10.6秒从时间戳增加+1
- 预期响应包含一个对象,但在angular js中得到一个数组错误
- Android在webview中加载带有javascript的html文件,得到Uncaught ReferenceEr
- 微风得到的是实体而不是对象的集合
- spring和angularJS(我得到了类似HTTP状态404的错误)
- 删除DataTable(1.10.8)后,删除的行将再次添加
- 把两个数字加在一起,得到5+10=510,而不是15
- 在列之间平分一个数字.12个糖果,10个人.2个人每人得到2个糖果,剩下的人得到1个
- PDF文件无法在使用adobereader 10.0的Internet Explorer中打开-用户得到一个空白的灰色屏
- 试图返回要查看的对象数组,得到“达到10次$digest()迭代”