【js】高阶函数是个什么?

释放双眼,带上耳机,听听看~!

所谓高阶函数,就是函数中可以传入另一个函数作为参数的函数。

function 高阶函数(函数){}

 

这是一个高阶函数,f是传入的函数作为参数。

【js】高阶函数是个什么?

其实高阶函数用的很多。其实平时也用,只是或许有些人并不知道那叫高阶函数。

js函数可以传入变量,而函数也是一个变量,自然也是可以传递的。

 

如:

map:一般用于操作数组集合,遍历操作用。

【js】高阶函数是个什么?

【js】高阶函数是个什么?

使用map(String)可以将数组的元素转字符串化:

但是内部对象会变成[object Object],数组会变成逗号分隔字符串,整个函数也会变成字符串。一般最好只转换基本类型元素。

【js】高阶函数是个什么?

当然也就有了map(Number),可以将字符串转数字。引用类型直接变成NaN。如果字符串不是纯数字也会变成NaN。

【js】高阶函数是个什么?

 

reduce:数组元素计算

如:这是数组求和,将元素全部加起来,相当于1+2+3+4+5。

【js】高阶函数是个什么?

当然也有数组求差,相当于1-2-3-4-5。

【js】高阶函数是个什么?

 

filter:筛选元素用。返回数组元素的判断(boolean)

如:筛选出数组中的奇数,%2不为0的就是奇数

【js】高阶函数是个什么?

筛选掉空字符串、null、undefined:

【js】高阶函数是个什么?

数组去重:

筛选条件:当前元素位置===数组该元素的第一个位置

【js】高阶函数是个什么?

 

sort:数组重排序。返回同一个数组对象。根据ascii码进行排序。

x>y:从小到大

x<y:从大到小

重排序的数组还是原来的数组。

【js】高阶函数是个什么?

英文也可以排序:

 【js】高阶函数是个什么?

中文也可以排序:

所以我的名字是根据ascii排序来的吗?

【js】高阶函数是个什么?

 

给TA打赏
共{{data.count}}人
人已打赏
随笔日记

SQL Server统计信息偏差影响表联结方式案例浅析

2020-11-9 4:07:18

随笔日记

Docker - 容器部署 Consul 集群

2020-11-9 4:07:20

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索