业内各大主流编程语言皆已支持map
、reduce
,怎能少得了JS?请看以下示例:
数据源
let users = [
{'id': 1, 'name': 'Sunny', 'age': 20, 'salary': 1000},
{'id': 2, 'name': 'David', 'age': 25, 'salary': 1200},
{'id': 3, 'name': 'Mark', 'age': 18, 'salary': 1150},
]
map
利用数组中对象的特定属性构建新的对象数组:
let names = user.map(x => x.name);
console.log(names);
输出结果为:
['Sunny', 'David', 'Mark']
map & reduce
二者通常结果使用(统计所有人的工资总和):
let amount = users.map(x => x.salary).reduce((x, y) => x + y);
console.log(amount);
输出结果为:
3350
filter
let names = users.filter(x => x.age <= 20).map(x => x.name);
console.log(names);
输出结果为:
['Sunny', 'David']