考虑我们有一个数字数组,看起来像这样-
const array = [54,54,65,73,43,78,54,54,76,3,23,78];
我们需要编写一个函数来计算给定数字以下/上方的数组中有多少个元素。
例如,如果数字为60-
答案应该是下面的5个元素(54,54,43,3,23)和下面的5个元素(65,73,78,76,78)因此,让我们编写此函数的代码-
为此的代码将是-
const array = [54,54,65,73,43,78,54,54,76,3,23,78];
const belowParNumbers = (arr, num) => {
return arr.reduce((acc, val) => {
const legend = ['par', 'below'];
const isBelow = val < num;
acc[legend[+isBelow]]++;
return acc;
}, {
below: 0,
par: 0
});
};
console.log(belowParNumbers(array, 50));
console.log(belowParNumbers(array, 60));
console.log(belowParNumbers(array, 70));输出结果
控制台中的输出将为-
{ below: 3, par: 9 }
{ below: 7, par: 5 }
{ below: 8, par: 4 }