首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么一个类型字符串的数字乘以另一个类型字符串的数字会产生一个数字?

为什么一个类型字符串的数字乘以另一个类型字符串的数字会产生一个数字?
EN

Stack Overflow用户
提问于 2021-04-22 16:01:42
回答 1查看 118关注 0票数 0

所以我正在运行算法,并且遇到了一个我不理解的问题的解决方案。我知道string + string会导致两个字符串的合并,即使这些字符串是类型字符串的数字。我不明白的是,为什么将一个类型为string的数字乘以另一个数字,同时也键入string,会产生一个值,即类型为number。例如:

"8" * "9"的结果是72,类型是数字,但是"8" + "9"给出了"89",是一个字符串。下面的片段显示了这一点:

代码语言:javascript
复制
console.log("8" * "9");
console.log("8" + "9");

乘法符号为什么或如何将字符串转换为数字?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-22 16:07:01

这是因为没有为字符串定义*,也就是说,在将字符串乘以另一个字符串时没有意义(和定义),因此,它检查字符串是否为数字(定义了* ),如果是,则将字符串乘以数字(如果不是数字,则输出NaN,而不是数字)。但是,+是为数字和字符串定义的,所以在尝试添加字符串时,它只是添加字符串,而不是检查它们的值是否是数字,因为这样就会对要添加的字符串或数字不明确。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67216836

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档