我意识到之前曾有人问过similar question。
但是根据this coding challenge,我需要在与两个数字<<>相同的行中返回“最小数组”(最小的4个数字)和“最大数组”(最大的4个数字)的和/ strong>,以空格分隔。不能作为数组,字符串或对象。
输出格式
打印两个以空格分隔的长整数,分别表示可以通过对五个整数中的四个精确求和而得出的最小值和最大值。 (输出可以大于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);
}
还将值作为数组返回。
答案 0 :(得分:2)
如果查看测试代码,则无法GET_LOCK()
{1>}
return
它不会记录结果-只需运行您的代码即可。记录结果反而是完美工作:
miniMaxSum(arr);