美文网首页
JS高阶函数

JS高阶函数

作者: thebestduleisi | 来源:发表于2017-11-18 10:41 被阅读0次

1.map: var arr=[1,2,3,4]; arr.map(function_name); 这传入的方法会把数组中每个值运行一遍;数组转字符串:arr.map(String);

2.reduce: reduce必须接收两个参数:[a,b,c,d].reduce(function_name) = f(f(f(a,b),c),d);可以计算数组的积 或和;

3.filter也是一个常用的操作,它用于把Array的某些元素过滤掉,然后返回剩下的元素;filter()把传入的函数依次作用于每个元素,然后根据返回值是true还是false决定保留还是丢弃该元素. 例:去除重复元素,删除偶数

arr.filter(function(x){                                                                        arr.filter(function(x,index,self){

return x/2 !== 0;                                                                                         return self.indexOf(x) === index;

})//返回奇数                                                                                        })//去除重复的

4.sort:对于两个元素x和y,如果认为x < y,则返回-1,如果认为x == y,则返回0,如果认为x > y,则返回1

arr.sort(function(x,y){})

5.箭头函数 x=>x*x  == function(x){return x*x};  多个参数用()   (x,y,...rest)=>...     ...rest可变参数除了x,y其余的参数

6.generator 生成器;generator由function*定义(注意多出的*号),并且,除了return语句,还可以用yield返回多次

function* incre_id(){ var oid = 1; while(true){ yield v++;}}  自增id例子

7.闭包:将一个函数作为返回值.http://www.ruanyifeng.com/blog/2009/08/learning_javascript_closures.html

相关文章

  • [JS函数] (Array)の高阶函数

    JS函数 高阶函数 高阶函数英文叫Higher-order function。那么什么是高阶函数? JavaScr...

  • 【JS】高阶函数与函数柯里化

    高阶函数 至少满足以下条件的函数: 接受一个或多个函数作为输入 输出一个函数JS高阶函数浅析[https://gi...

  • 高级语法

    高阶函数:以其他函数作为其参数或者返回值的函数。跟JS一样,python提供了部分内置高阶函数 匿名函数:pyth...

  • 高阶组件

    高阶函数:接受一个或多个函数并返回一个函数 JS中,array的map、filter、reduce等方法就是高阶函...

  • python函数式编程

    高阶函数 把函数作为参数传入,这样的函数称为高阶函数,函数式编程就是指这种高度抽象的编程范式。与js相似,与c#中...

  • js高阶函数

    一、函数作为参数传递 1、回调函数 ajax异步请求 2、Array.prototype.sort 二、函数作为返...

  • JS高阶函数

    1.map: var arr=[1,2,3,4]; arr.map(function_name); 这传入的方法会...

  • js高阶函数

    bind可以利用此种特性方便代码重用,如下,可以不同的页面中只需要配置某几项,前面几项固定的配置可以选择用bind...

  • JS 高阶函数

    最近在学习函数式编程,整个 team 都在啃一本叫《Mostly adequate guide》的函数式编程教材,...

  • js高阶函数

    高阶函数将其他函数作为参数或将返回函数作为结果。它们提供了JavaScript中清晰易懂的语法。这将帮助你以更少的...

网友评论

      本文标题:JS高阶函数

      本文链接:https://www.haomeiwen.com/subject/jaydvxtx.html