javascript - 为什么这会导致串联而不是将两个数字相加?

标签 javascript

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

let theNum = n => n + 1;

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

alert(theNum(usrNum))

最佳答案

因为在JS中,字符串+数字=字符串。在 n 之前尝试 '+':

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

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

alert(theNum(usrNum))

关于javascript - 为什么这会导致串联而不是将两个数字相加?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59120716/

相关文章:

客户端的 JavaScript eval() 用于运行不受信任的代码

javascript - 使用 JavaScript 在鼠标光标移动时获取焦点元素

javascript - 渐进增强——不使用 CSS 隐藏元素

javascript - 跟踪网站历史记录?

javascript - 将变量发送到 RoR 中的 javascript 文件

javascript - 将递归函数转换为 JavaScript 中的迭代

javascript - 无法在 jQuery 中显示/隐藏复选框检查上的按钮

javascript - croppie 插件无法使用 ajax/innerHtml 内容

javascript - npm install selenium-webdriver 的 npm 错误

javascript - 在 Angular 中使用 ngroute 重定向未经授权的用户