JavaScript 如何对Set元素进行映射、缩减和过滤

JavaScript 如何对Set元素进行映射、缩减和过滤

map()、reduce() 和 filter() 是数组函数,根据应用的函数来转换数组并返回更新后的数组。它们用于编写简单、简洁的代码,以修改数组而不是使用循环。

  • map()方法: 它在数组的所有元素上应用给定的函数,并返回更新后的数组。它是简单和更短的代码,而不是使用循环。map方法类似于以下代码:
function product(a, b){
    return a * b; 
}
arr = new Array(1, 2, 3, 6, 5, 4);
var product_of_arr = arr.reduce(product)
console.log(product_of_arr) 

语法:

array.map(要应用的函数)
array.map(function(args) {
    // 代码;
})

示例:

arr = new Array(1, 2, 3, 6, 5, 4);
new_arr = {} for(let i = 0; i < 6; i++) { if(arr[i] % 2 == 0) {   new_arr.push(arr[i]);     } } 

输出:

[ 2, 6, 4 ]
  • reduce()方法: 它通过重复应用函数将数组的所有元素减少为单个值。它是使用循环和更新每个扫描的元素的结果的替代方法。reduce可以用来代替以下代码:
arr = new Array(1, 2, 3, 6, 5, 4);
var new_arr = arr.filter(function(x){   return x % 2==0; });
console.log(new_arr)  

语法:

array.reduce(要应用的函数)
array.reduce(function(args) {
    // 代码;
})

示例:

输出:

720
  • filter()方法: 它过滤数组中返回应用条件为false的元素,并返回包含满足应用条件的元素的数组。它是一个简单和更短的代码,而不是使用循环以下的代码:
sarr = new Array(1, 2, 3, 6, 5, 4);
snew_arr = {} for(let i = 0; i < 6; i++) { if(arr[i] % 2 == 0) {   new_arr.push(arr[i]);     } } 

语法:

array.filter(要应用的函数)
array.filter(function(args) {
    // 条件;
})

示例:

arr = new Array(1, 2, 3, 6, 5, 4);
var new_arr = arr.filter(function(x){   return x % 2==0; });  console.log(new_arr) 

输出:

[ 2, 6, 4 ]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程