Math.max( ...['1', '2.20', '5.50']), то он вернет 5.5, а мне нужно, чтобы всё сохранялось в первоначальном виде, т.е. чтобы вернулось '5.50'.
const maxStr = arr.length
? arr.reduce((max, n) => +n < +max ? max : n)
: null;function max(data, key = n => n) {
const getVal = key instanceof Function ? key : n => n[key];
let result = null;
for (const n of data) {
const val = getVal(n);
result = result?.[1] >= val ? result : [ n, val ];
}
return result?.[0];
}
const maxStr = max(arr, Number);