闭包写法

tab 例子

for(var i=0; i<aLi.length; i++)
{
  /*方法一:*/
  /*(function(i){ // 这里 把 外面的 i 存进来................................重点 内部i
  console.log(i); // ............循环的时候 i 已经存在
  aLi[i].onclick=function(){
  alert(i);
  //console.log(‘2‘+i);
  }
  })(i) */ // 循环的时候 把 i 存起来 因为循环一次 运行一次 ...............这里的 外部i 是重点

  /*方法二*/

  aLi[i].onclick=(function(i){
    //alert(i);
    return function(){
      alert(i);
    }
  })(i)

}

时间: 2024-10-15 09:26:24

闭包写法的相关文章

js模块化 javascript 模块化 闭包写法 闭包模块化写法

var main = main || {}; ; (function (main) { 'use strict'; //私有变量 var _s1 = 'Hello '; var _s2 = 'World!~'; //私有方法 var _func = { helloWorld: function (str1, str2) { return str1 + str2; } }; //公有方法 main.method = { add: function (a, b) { return a + b; },

SWIFt闭包

闭包的三种形式 1.全局函数是一个有名字但不会捕获任何值的闭包2.嵌套函数是一个有名字并且可以捕获其封闭函数域内值的闭包3.闭包表达式时一个利用轻量级语法缩写的可以捕获其上下文中变量或者常量值的没有名字的闭包 SWIFT闭包中的一些特点 1.利用上下文推断参数和返回值类型2.单表达式闭包可以省略return关键字3.参数名称简写4.Trailing闭包语法 闭包表达式 一般情况下我们采用如下方式使用sort 1 // Playground - noun: a place where people

Swift学习之十四:闭包(Closures)

* 闭包(Closures) * 闭包是自包含的功能代码块,可以在代码中使用或者用来作为参数传值. * 在Swift中的闭包与C.OC中的blocks和其它编程语言(如Python)中的lambdas类似. * 闭包可以捕获和存储上下文中定义的的任何常量和变量的引用.这就是所谓的变量和变量的自封闭, * 因此命名为”闭包“("Closures)").Swift还会处理所有捕获的引用的内存管理. * * 全局函数和嵌套函数其实就是特殊的闭包. * 闭包的形式有: * (1)全局函数都是闭

闭包的概念及使用

什么是闭包? 官方来说就是引用了自由变量的函数:通俗讲就是里面函数引用了外面的变量,同时这个函数一定被外面变量所引用.也就是说被引用的自由变量将和函数一同存在,即使离开了创造他的环境也会存在.很多高级应用中都要依靠闭包来实现. 例如: var eat = function(){ var food = '包子'; //这里的return所返回的函数就是典型的闭包写法 return function(){ console.log(food); } } var look = eat(); 上面例子的定

初识js中的闭包

今天看了关于js闭包方面的文章,还是有些云里雾里,对于一个菜鸟来说,学习闭包确实有一定的难度,不说别的,能够在网上找到一篇优秀的是那样的不易. 当然之所以闭包难理解,个人觉得是基础知识掌握的不牢,因为闭包牵扯到一些前面的东西,比如作用域\等等,如果连基本的作用域都没有弄清楚,自然不可能搞懂闭包,还有就是对js的实践比较少,因为你根本就不知道什么时候要用这东西,自然谈不上对闭包的深刻理解. 今天我就简单的说说我目前所理解的闭包,当然可能不完全正确,但是我相信会给你一定的启发. 首先我们来谈谈js中

《从零开始学Swift》学习笔记(Day 23)——尾随闭包

原创文章,欢迎转载.转载请注明:关东升的博客 闭包表达式可以作为函数的参数传递,如果闭包表达式很长,就会影响程序的可读性.尾随闭包是一个书写在函数括号之后的闭包表达式,函数支持将其作为最后一个参数调用. 下面我们来看一个示例代码: func calculate(opr:String, funN:(Int,Int)-> Int) { //最后一个参数funN是(Int,Int)-> Int函数类型,funN可以接收闭包表达式       switch (opr) {     case "

Swift学习:闭包(Closures)

/* 闭包(Closures)* 闭包是自包含的功能代码块,可以在代码中使用或者用来作为参数传值.* 在Swift中的闭包与C.OC中的blocks和其它编程语言(如Python)中的lambdas类似.* 闭包可以捕获和存储上下文中定义的的任何常量和变量的引用.这就是所谓的变量和变量的自封闭,* 因此命名为”闭包“(“Closures)”).Swift还会处理所有捕获的引用的内存管理.** 全局函数和嵌套函数其实就是特殊的闭包.* 闭包的形式有:* (1)全局函数都是闭包,有名字但不能捕获任何

Swift:闭包(Closures)

一. 基本概念 闭包(Closures)是自包括的功能代码块,能够在代码中使用或者用来作为參数传值. 在Swift中的闭包与C.OC中的blocks和其他编程语言(如C#)中的lambda, javascript中的函数嵌套等类似. 闭包能够捕获和存储上下文中定义的的不论什么常量和变量的引用. 这就是所谓的变量和变量的自封闭, 因此闭包还会处理全部捕获的引用的内存管理. 全局函数和嵌套函数事实上就是特殊的闭包. 闭包的形式有: (1)全局函数都是闭包.有名字但不能捕获不论什么值. (2)嵌套函数

swift闭包-备

我给Swift 中的闭包一个定义:闭包是自包含的匿名函数代码块,可以作为表达式.函数参数和函数返回值,闭包表达式的运算结果是一种函数类型. Swift中的闭包类似于Objective-C中的代码块.Java中的匿名内部类. 使用闭包表达式 Swift中的闭包表达式很灵活,其标准语法格式如下: { (参数列表) ->返回值类型 in 语句组 } 其中,参数列表与函数中的参数列表形式一样,返回值类型类似于函数中的返回值类型,但不同的是后面有in关键字. Swift提供了多种闭包简化写法,我来介绍下面