Javascript 为什么这会导致连接而不是将两个数字相加?

Javascript 为什么这会导致连接而不是将两个数字相加?,javascript,Javascript,如果我输入一个数字作为输入,为什么这会导致连接而不是将两个数字相加 let theNum = n => n + 1; let usrNum = prompt("Enter a number: ") alert(theNum(usrNum)) 因为在JS中,string+numbers=string。在n之前尝试“+”: let theNum = n => +n + 1; // or Number(n) let usrNum = prompt("Enter a number:

如果我输入一个数字作为输入,为什么这会导致连接而不是将两个数字相加

let theNum = n => n + 1;

let usrNum = prompt("Enter a number: ")

alert(theNum(usrNum))

因为在JS中,string+numbers=string。在n之前尝试“+”:

let theNum = n => +n + 1; // or Number(n)

let usrNum = prompt("Enter a number: ")

alert(theNum(usrNum))

提示符通常返回一个
字符串
。要实现这一点,您可以先使用
number(usrNum)
interest将其转换为数字。谢谢大家!@jcal
Number(usrNum)
有点过分了。只需在要转换的字符串前面加上一个
+
<代码>让usrNum=+提示符(“输入一个数字:”)