Javascript 如何获得正确的输出?

Javascript 如何获得正确的输出?,javascript,math,concatenation,Javascript,Math,Concatenation,我有以下代码: var theNumber = Number(prompt("Pick a number", "")); alert("Your number is the sum of " + theNumber + 10); 我注意到Javascript试图将10转换为字符串(正如预期的那样),我想知道我应该在代码中为输出更改哪些内容,即实际值、数字(用户将选择)加上数字10的总和 括号 var theNumber = Number(prompt

我有以下代码:

      var theNumber = Number(prompt("Pick a number", ""));
              alert("Your number is the sum of " + theNumber + 10);
我注意到Javascript试图将10转换为字符串(正如预期的那样),我想知道我应该在代码中为输出更改哪些内容,即实际值、数字(用户将选择)加上数字10的总和

括号

  var theNumber = Number(prompt("Pick a number", ""));
          alert("Your number is the sum of " + (theNumber + 10));
您需要执行以下操作:

alert("Your number is the sum of " + (theNumber + 10));
问题是它是从左到右工作的,因此它看到一个字符串,然后将编号转换为字符串,然后看到10并将10转换为字符串。通过添加括号,可以让它先进行加法,然后转换为字符串

alert("Your number is the sum of " + (theNumber + parseInt(10)));

parseInt()函数解析字符串并返回一个整数。

在警报之前转换为数字()将用实际数字填充数字:

var theNumber=Number(提示(“选择一个数字”);

警报(数字+10+“与您的数字相加”)

创建一个名为temp的变量,并将其值指定为temp=number+10;用它来代替!为parseint dude添加基数。ie9默认为基数8.Thx作为答案。。。还没有达到这个功能,所以我不知道它是如何工作的。但是:)。在javascript中,基本上所有内容都是字符串,所以即使你说var a=10;它将假定它是一个is字符串,所以要将该字符串值转换为实际整数,可以使用parseInt()函数将其转换为整数值。我是Javascript新手,这似乎是最简单的方法。是的,非常简单,但我建议你先学习一本js书,如果你没有。你的代码看起来很像我的,只是括号内的顺序不同。它是怎么工作的?这是因为它是从左到右工作的?这只是JS解析的方式,只要它处理的是数字,它就是一个数字。一旦一个字符串出现,它的所有内容(即字符串优先于数字)都会出现。是的,现在我明白了,这是有意义的。另一个用户通过更改括号内的顺序(但不添加额外的顺序)来编写代码,它也工作了。所以我想在这种情况下,顺序是非常重要的。我不熟悉Javascript,但我仍在尝试掌握它的窍门:)。非常感谢。