zoukankan      html  css  js  c++  java
  • 闭包

    闭包:
      应用两种情况
       1、函数作为返回值
       2、函数作为参数传递

          1、
              function fn1(){
          var max = 10;
          return function bar(x){
            if(x > max){
            console.log(x)
            }
          }
        }
        var f1 = fn1();
        f1(15);

       2、
        var max = 10,
        fn2 = function (x) {
          if(x > max){
          console.log(x) //15
          }
        };
        (function (f) {
          var max = 100;
          f(15)
        })(fn2)

       var name = "The Window";
        var object = {
          name : "My Object",
          getNameFunc : function(){
            return function(){
              return this.name;
            };
          }
        };
      console.log(object.getNameFunc()());//The Window

      var name = "The Window";
      var object = {
        name : "My Object",
        getNameFunc : function(){
          var that = this;
          return function(){
            return that.name;
          };
        }
      };
    console.log(object.getNameFunc()());//My Object

  • 相关阅读:
    斯特林公式
    高精度算法
    容斥原理
    贪心问题之——Dijkstra最短路
    博弈论
    JavaScript数据类型
    JavaScript变量
    认识JavaScript
    编程语言与计算机
    CSS验证工具
  • 原文地址:https://www.cnblogs.com/eye-color/p/6863662.html
Copyright © 2011-2022 走看看