Я понимаю, что подобный вопрос задавался ранее.
Но согласно этой задаче кодирования мне нужно вернуть сумму "минимального массива" (наименьшее 4 числа) и "максимального массива" (наибольшего 4 числа) в одной строке как две чисел , разделенных пробелом. Не в виде массива, строки или объекта.
Формат вывода
Выведите два разделенных пробелом длинных целых числа, обозначающих соответствующие минимальное и максимальное значения, которые можно рассчитать путем суммирования ровно четырех из пяти целых чисел. (Выход может быть больше 32-разрядного целого числа.)
У меня есть:
function miniMaxSum(arr) {
arr = arr.sort((a, b) => a - b);
let smallest = arr.slice(0, -1);
let largest = arr.slice(1, arr.length);
let first = Number(smallest.reduce((a, b) => a + b));
let second = Number(largest.reduce((a, b) => a + b));
return first + " " + second;
}
И когда я возвращаю first
и second
, они возвращаются в виде строк вместо цифр, я предполагаю, что это потому, что я добавил + " " +
между ними.
Итак, как мне вернуть их как числа с пробелом между ними?
Я также пытался return Number(first) + " " + Number(second);
, но это не имеет значения, они все еще возвращаются в виде строки.
Аналогично, хранение сумм в объекте:
function miniMaxSum(arr) {
arr = arr.sort((a, b) => a - b);
let smallest = arr.slice(0, -1);
let largest = arr.slice(1, arr.length);
let first = Number(smallest.reduce((a, b) => a + b));
let second = Number(largest.reduce((a, b) => a + b));
let object = {first, second};
return Object.values(object);
}
также возвращает значения в виде массива.