abc.filter().map()=>to reduce()我应该如何使用它?JavaScript

abc.filter().map()=>to reduce()我应该如何使用它?JavaScript,javascript,dictionary,filter,reduce,Javascript,Dictionary,Filter,Reduce,有一个数组: let x = [12,2,3.5,4,-29]; let squared = x.filter((a) => a>0 && Number.isInteger(a)).map((a) => a**2); 请问,如何用reduce写这个?点是-仅获取给定数组中大于“0”的整数的平方数。有什么想法吗?谢谢。您可以使用a并获取平方值或空数组,以便与累加器计算 var x=[12,2,3.5,4,-29], 平方=x.reducer,a=>r.conc

有一个数组:

let x = [12,2,3.5,4,-29];
let squared = x.filter((a) => a>0 && Number.isInteger(a)).map((a) => a**2);
请问,如何用reduce写这个?点是-仅获取给定数组中大于“0”的整数的平方数。有什么想法吗?谢谢。

您可以使用a并获取平方值或空数组,以便与累加器计算

var x=[12,2,3.5,4,-29], 平方=x.reducer,a=>r.concata>0&&Number.isIntegera ? a**2 : [] , []; console.logsquared 您可以使用和获取平方值或空数组,以便与累加器合并

var x=[12,2,3.5,4,-29], 平方=x.reducer,a=>r.concata>0&&Number.isIntegera ? a**2 : [] , []; console.logsquared 原件:

let x = [12,2,3.5,4,-29];
let squared = x.filter((a) => a>0 && Number.isInteger(a)).map((a) => a**2);
现在,考虑一下为了使用reduce方法,我们在这里要做什么

我们需要一个数组,并返回一个新数组,该数组由原始数组中所有正整数的平方组成

这意味着reduce中的累加器应该是一个数组,因为我们在最后返回一个数组。这还意味着我们需要包括逻辑控制流,以便只向累加器添加正整数元素

请参见下面的示例:

const x = [12,2,3.5,4,-29];
const squared = x.reduce((acc, val) => val > 0 && val % 1 === 0 ? acc.concat(val ** 2) : acc, []);

console.log(squared);
// [144, 4, 16]
原件:

let x = [12,2,3.5,4,-29];
let squared = x.filter((a) => a>0 && Number.isInteger(a)).map((a) => a**2);
现在,考虑一下为了使用reduce方法,我们在这里要做什么

我们需要一个数组,并返回一个新数组,该数组由原始数组中所有正整数的平方组成

这意味着reduce中的累加器应该是一个数组,因为我们在最后返回一个数组。这还意味着我们需要包括逻辑控制流,以便只向累加器添加正整数元素

请参见下面的示例:

const x = [12,2,3.5,4,-29];
const squared = x.reduce((acc, val) => val > 0 && val % 1 === 0 ? acc.concat(val ** 2) : acc, []);

console.log(squared);
// [144, 4, 16]

我想你指的是**2。哦,隧道的尽头,这是我的名字。丹克,有号码吗?这是极少数适合使用扩展语法的情况之一:r,a=>?我想你指的是**2.哦,隧道的尽头,这是我的名字。丹克,有号码吗?这是极少数适合使用扩展语法的情况之一:r,a=>?[…r,a**2]:rWhy要使用reduce编写此文件?因为您想创建一个结果数组,所以filter和map是完全合适的。是的,filter和map都是合适的。但是,使用reduce——我已经证明了——一个脚本使用的步骤少了10步。使用filter和map,我应该遍历数组两次。Reduce只允许我使用一次。为什么要使用Reduce编写此文件?因为您想创建一个结果数组,所以filter和map是完全合适的。是的,filter和map都是合适的。但是,使用reduce——我已经证明了——一个脚本使用的步骤少了10步。使用filter和map,我应该遍历数组两次。请只允许我一次。