首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >字符串的位数和- Javascript

字符串的位数和- Javascript
EN

Stack Overflow用户
提问于 2018-10-25 08:00:09
回答 2查看 1.1K关注 0票数 -3

对下面的内容有任何帮助。该函数应接受任何由字母和数字组成的字符串。它应该将字符串中出现的所有数字相加,并返回总数。

例如'foo5bar6cat1‘=> 12 'foo98cat’=> 17

我已经尝试了以下方法,但没有成功。

代码语言:javascript
复制
 function sumDigitsFromString (str) {
    let arr = str.split('');
    arr = arr.reduce(function(a, b) {
       return Number('0') + Number('a');
     }, 0);
     return arr;
    }

EN

回答 2

Stack Overflow用户

发布于 2018-10-25 08:03:31

您可以拆分该字符串,然后使用函数reduce对所有数字求和。

代码语言:javascript
复制
let add = s => s.split('').reduce((a, c) => a + (isNaN(+c) ? 0 : +c), 0);

console.log(add('foo5bar6cat1'));
console.log(add('foo98cat'));
代码语言:javascript
复制
.as-console-wrapper { max-height: 100% !important; top: 0; }

票数 0
EN

Stack Overflow用户

发布于 2018-10-25 08:37:29

您可以使用match从字符串中获取数字,并对其使用reduce

代码语言:javascript
复制
function sumDigitsFromString(str) {
  return str.match(/\d/g).reduce((n, c) => n + +c, 0);
}

const out = sumDigitsFromString('foo5bar6cat1');
const out2 = sumDigitsFromString('foo98cat');
console.log(out, out2);

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

https://stackoverflow.com/questions/52979510

复制
相关文章

相似问题

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