在 JavaScript 中将字符串添加为数字
How to add Strings as Numbers in JavaScript
将字符串添加为数字:
- 将每个字符串传递给
Number
对象以将其转换为数字。 - 使用加法 (+) 运算符,例如
Number('1') + Number('2')
。 - 加法运算符将返回数字的总和。
索引.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 个参数:
- 我们要解析为数字的字符串
- 基数——默认值不是 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