如何在 JavaScript 中将字符串添加为数字

在 JavaScript 中将字符串添加为数字

How to add Strings as Numbers in JavaScript

将字符串添加为数字:

  1. 将每个字符串传递给Number对象以将其转换为数字。
  2. 使用加法 (+) 运算符,例如Number('1') + Number('2')
  3. 加法运算符将返回数字的总和。
索引.js
const str1 = '5'; const str2 = '15'; const result = Number(str1) + Number(str2); console.log(result); // 👉️ 20 console.log(typeof result); // 👉️ number

我们使用
Number
对象将两个字符串转换为数字,并使用
加法 (+)
运算符将它们相加。

请注意,在使用加法 (+) 运算符之前,必须将所有字符串转换为数字。否则,它将数字转换为字符串并连接字符串。
索引.js
console.log(5 + '10'); // 👉️ 510

您可以使用这种方法将多个字符串添加为数字。

索引.js
const str1 = '5'; const str2 = '10'; const str3 = '15'; const result = Number(str1) + Number(str2) + Number(str3); console.log(result); // 👉️ 30

另一种非常常见的方法是使用一元加号 (+) 运算符。

使用一元加号 (+) 将字符串添加为数字

要将字符串添加为数字,请使用一元加号 (+) 运算符将每个字符串转换为数字并使用加法 (+) 运算符添加数字,例如
+'5' + +'10'

索引.js
const str1 = '5'; const str2 = '15'; const result = +str1 + +str2; console.log(result); // 👉️ 20


元加号 (+)
运算符尝试将值转换为数字。

这变得难以阅读,因为我们有 2 个一元加号 (+) 运算符和一个加号 (+) 运算符。

我不推荐使用这种方法。但是,一元加号运算符经常被开发人员使用,所以了解一下还是不错的。

这两个示例都将字符串转换为数字。一个使用一元加号 (+) 方法,另一个使用Number对象。

索引.js
const n1 = +'100'; console.log(n1); // 👉️ 100 console.log(typeof n1); // 👉️ number const n2 = Number(100); console.log(n2); // 👉️ 100 console.log(typeof n2); // 👉️ number

如果您的字符串以字符结尾,则必须改用该parseInt方法。

索引.js
const str1 = '5a'; const str2 = '15b'; const result = parseInt(str1, 10) + parseInt(str2, 10); console.log(result); // 👉️ 20
我们的字符串以非数字字符结尾,所以我们不能直接将它们转换为数字。

相反,我们使用了
parseInt
方法。

该方法采用以下 2 个参数:

  1. 我们要解析为数字的字符串
  2. 基数——默认值不是 10,所以我们必须显式地传递它

考虑该方法的一种简单parseInt方法是 – 我们从字符串的开头获取尽可能多的数字,忽略其余部分并将值转换为数字。

索引.js
const s1 = parseInt('5abc', 10); console.log(s1); // 👉️ 5 console.log(typeof s1); // 👉️ number

如果非数字字符位于字符串的开头,这将不起作用。

索引.js
const s1 = parseInt('abc5', 10); console.log(s1); // 👉️ NaN

进一步阅读

发表评论