You could test if the avtual value has only digits and if the last stored valu has digits, then add the avual value. Otherwise push the value to the result set.
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);
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…