美文网首页
JS-闭包、回调、递归

JS-闭包、回调、递归

作者: 大大的小小小心愿 | 来源:发表于2017-10-22 14:11 被阅读0次

一、闭包
函数内部创建个函数形成闭包
闭包的应用
二、回调
在一个函数中,把另一个函数的函数名当一个参数,进行调用。

function a(){
        console.log("我是函数a");
    }
    function b(funa){
        funa();
    }
    b(a);

利用回调函数,在死循环中模拟定时器

function myTime(fun,time){
        var date = new Date;
        for(;;){
            var date2 = new Date;
            if(date2 - date >= time){
                break;
            }
        }
    }

    myTime(function(){"time时间后打印了我"},1000);

三、递归
1、 函数内部调用函数本身(死循环,一般给一个条件,让其退出死循环)

  function test(){
     test();
  }

2、递归面试题

var i = 10;
  function test(){
    var a = i--;
    if(i <= 0){
        return;
    }
    console.log(a);
    test();
}
test();  //打印结果 10 9 8 7 6 5 4 3 2

var i = 10;
    function test(){
        var a = i--;  
        if(i < 0){
            return;  
        }
        test();  
        console.log(a); 
    }
test();        //结果打印出   1 2 3 4 5 6 7 8 9 10

思路:递归执行完后,再return 上一级、console.log a的值

a.png

2、利用递归实现数的累加

function add(num){
if(num == 1){
    return 1;
}
return num + add(num -1);
}
console.log(add(3));

相关文章

  • JS-闭包、回调、递归

    一、闭包函数内部创建个函数形成闭包闭包的应用二、回调在一个函数中,把另一个函数的函数名当一个参数,进行调用。 利用...

  • 【Swift】关于闭包的几种写法

    闭包 闭包是一个特殊的函数,经常用于回调 简单举个例子:在方法中定义闭包实现回调传值 尾随闭包:1.如果闭包是函数...

  • js-高级(闭包-递归)

    1 闭包(closure) 在函数的外部去访问函数内部的变量,这一种机制其实就是闭包※※案例说明↓ chrome下...

  • go 基本函数

    多返回值函数 递归 函数类型 type 回调函数 和多态(强大) 匿名函数 与 闭包 关键字defer(defer...

  • Swift基础语法-闭包,闭包函数回调,尾随闭包,闭包捕获值,循

    本节知识点 闭包的基本概念 闭包基本使用 闭包表达式作为回调函数 闭包的多种写法(尾随闭包) 闭包表达式优化 闭包...

  • 4 iOS类微信日志2018-01-13

    Swift 闭包的使用 步骤: 1. 声明闭包 2. 声明闭包的别名属性 3. 设置回调函数 4. 调用闭包 声明...

  • swift - 闭包回调

    在需要返回数据的页面secondViewController1.定义一个闭包 2.声明一个闭包 3.返回数据 完整...

  • 回调与闭包

    1、回调函数 一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调...

  • 闭包与回调

    转载自:http://blog.csdn.net/u010142437/article/details/12453...

  • swift 闭包回调

    1.跳转到需要回调的页面 2.跳转的页面 3 嵌套方法 使用

网友评论

      本文标题:JS-闭包、回调、递归

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