gpt4 book ai didi

javascript - NodeJS : how to separate large strings into an array of numbers, 然后添加所有具有偶数索引的

转载 作者:行者123 更新时间:2023-11-29 23:18:39 25 4
gpt4 key购买 nike

我从中获取原始字符串的数组看起来像这样:

arr[0]:
11-3
12-6
arr[1]:
5-9
7-2
18-2
arr[2]:
2-7

(这只是一个例子,一般的想法是arr中可以有任意数量的对象,并且每个对象中的字符串包含任意数量的#-#组合)

我正在尝试将左侧的所有数字相加(如果使用上面的示例,它会将 11、12、5、7、18 和 2 之类的内容相加)并将该数字存储在变量中。

我该怎么做?

编辑 1:尝试的代码:

var winsLossNums = winLoss[0].match(/\d+/g).map(Number)

for (var i = 0; i < winLoss[0].match(/\d+/g).map(Number).length; i++) {
if (i % 2 === 0) {
totalNums.push(winLoss[0].match(/\d+/g).map(Number)[i]);
}
}
}

这段代码在一个循环中,每个循环都有一个新的 arr 对象,就像上面的例子一样

最佳答案

假设您的数组值是字符串,它们之间有一个换行符,您可以减少整个数组,在 \n 上拆分每个值并再次减少,取第一个拆分值 '- ':

let arr = ['11-3\n12-6', '5-9\n7-2\n18-2',  '2-7']

let tot = arr.reduce((a, c) => {
let pairs = c.split('\n')
return a + pairs.reduce((a, c)=> a + Number(c.split('-')[0]), 0)
}, 0)

console.log(tot)
console.log(11 + 12 + 5 + 7+ 18 + 2)

如果每行一个 \n 不干净,您可能需要清理数据或按空格拆分。但这应该是一个好的开始。

关于javascript - NodeJS : how to separate large strings into an array of numbers, 然后添加所有具有偶数索引的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51625196/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com