web前端:JS高级---闭包小案例

    作者:jane_panyiyun更新于: 2020-03-31 22:46:21

    Web开发

      "闭包"一词来源于以下两者的结合:要执行的代码块(由于自由变量被包含在代码块中,这些自由变量以及它们引用的对象没有被释放)和为自由变量提供绑定的计算环境(作用域)。在php、Scala、Scheme、CommonLisp、Smalltalk、Groovy、Javascript、Ruby、Python、Go、Lua、objectivec、Swift以及java(Java8及以上)等语言中都能找到对闭包不同程度的支持。

      闭包小案例

      1普通的函数

      //普通的函数

      functionf1(){

      varnum=10;

      num++;

      returnnum;

      }

      console.log(f1());//11

      console.log(f1());//11

      console.log(f1());//11

      2函数模式的闭包

      //函数模式的闭包

      functionf2(){

      varnum=10;

      returnfunction(){

      num++;

      returnnum;

      }

      }

      varff=f2();

      console.log(ff());//11

      console.log(ff());//12

      console.log(ff());//13

      闭包点的定义非常接近极限点的定义。这两个定义之间的差别非常微小但很重要--在极限点的定义中,点x的邻域必须包含和x不同的集合的点。

课课家教育

未登录