如何强制 JavaScript 进行数学运算而不是将两个字符串放在一起?

javascriptweb developmentobject oriented programming更新于 2025/10/22 2:52:17

假设我们有一个字符串数组,基本上它是一个像这样的数字字符串数组 −

const arr = ['3', '3', '55', '23', '67', '43', '12', '67', '87', '12'];

我们需要编写一个 JavaScript 函数,该函数接受一个这样的数组并返回该数组所有元素的总和,而不是将字符串相互连接。

请来编写该函数代码 −

示例

const arr = ['3', '3', '55', '23', '67', '43', '12', '67', '87', '12'];
const sumString = arr => {
   const num = arr.reduce((acc, val) => {
      const sum = acc + (+val || 0);
      return sum;
   }, 0);
   return num;
};
console.log(sumString(arr));

一元 (+) 运算符,在任何字符串之前强制从 String 类型显式强制转换为 Number 类型,如果字符串的第一个字符不是有效数字,则返回 NaN,否则返回有效数字。

输出

控制台中的输出将是 −

372

相关文章


有用资源