我想将此数组['1','3','+','8','0','/','5','7','0']
转换为['13','+','80','/','570']
我尝试了这个:
let valu = val.value;
let tab1 = [];
if(!isNaN(valu)) {
tab1.push(valu)
}
else {
tab.push(tab1)
tab1 = [];
tab.push(valu)
}
您可以测试avtual值是否只有数字,而最后存储的值是否有数字,然后添加avual值。否则,将值推入结果集。
const
hasDigits = c => /^\d+$/.test(c),
array = ['1', '3', '+', '8', '0', '/', '5', '7', '0'],
result = array.reduce((r, v) => {
if (hasDigits(v) && hasDigits(r[r.length - 1] || '')) r[r.length - 1] += v;
else r.push(v);
return r;
}, []);
console.log(result);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句