首页 > 解决方案 > JavaScript中的'*'不需要parseInt吗?

问题描述

我有数组,通过它在某些时候映射数组并计算总和和百分比。因此,在实现逻辑时,我看到了,当我直接使用 '*' 时它可以工作,但是当我使用 '+' 时,它只是添加了两个字符串

For example:

const a = '100';
const b = '10';

const c = a * b;

const d = a + b;

console.log(d)

当我检查 d 时,它给出 '10010' 而当 c 它给出 '1000' !这怎么样 ?

但是当我使用 parseInt(a) + parseInt(b)它时,它可以完美地110作为输出

标签: javascript

解决方案


在 JavaScript 中,没有 int、float 等原始数据类型。只有变量可以用你需要的一切来初始化。对于你的例子

const a = 100;
const b = 10;

const c = a * b;

const d = a + b;

console.log(d);

应该可以完美运行,因为我删除了''. 用''常量认为它是一个提供的字符串。没有'',只有保存在常量中的数字。在您的示例中也+不起作用,因为正如我所说,常量认为数字是字符串,因为''. 所以它只是把这两个“字符串”放在一起,而不是总结它们。


推荐阅读