闭包:

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Closures

闭包是函数和声明该函数的词法环境的组合。

let:

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements/let

let 语句声明一个块级作用域的本地变量,并且可选的将其初始化为一个值。

例:闭包和 let 修正匿名函数访问的变量

function foo(){
var bar = [];
for (var index = 0; index < 9; index++) {
bar[index] = function(){
return index;
}
}
return bar;
} function foo_closures(){
var bar = [];
for (let index = 0; index < 9; index++) {
(bar[index] = function(){
return index;
})()
}
return bar;
} function foo_let(){
var bar = [];
for (let index = 0; index < 9; index++) {
bar[index] = function(){
return index;
}
}
return bar;
} for(var d of foo()){
console.log(d());// 9个9
} for(var d of foo_closures()){
console.log(d());// 1,2,...8
} for(var d of foo_let()){
console.log(d());// 1,2,...8
}

《ECMAScript6 入门》的更多相关文章

  1. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  2. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  5. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  6. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

  7. 怎样从外网访问内网Memcached数据库

    外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...

  8. 怎样从外网访问内网CouchDB数据库

    外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...

  9. 怎样从外网访问内网DB2数据库

    外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...

  10. 怎样从外网访问内网OpenLDAP数据库

    外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...

随机推荐

  1. H5 拍照图片旋转、压缩和上传

    原文地址:github.com/whinc/blog/… 最近接到一个“发表评论”的需求:用户输入评论并且可以拍照或从相册选择图片上传,即支持图文评论.需要同时在 H5 和小程序两端实现,该需求处理图 ...

  2. webpack常用的插件

    webpack常用的开发插件 1.clean-webpack-plugin 运行webpack build时先把打包进入的文件夹清空 注意,它是以对象的方式去接收的 const { CleanWebp ...

  3. 十二、LaTex中数学公式多行排版

  4. 为了实现动态加载而编写的自己的ClassLoader

    Copy备用 之前客户要求在不重启应用的前提下实现动态增加服务及交易,在网上查了很长时间也没发现类似的技术,最后研究了一下ClassLoader.因为项目是与Spring,一开始我和同事尝试替换源码的 ...

  5. VMware安装,安装CentOS 6.3 ,安装CentOS 7_1511_mini

    VMware安装包+汉化包+序列号 百度云链接:https://pan.baidu.com/s/1c8ZsZc9ySdCdxrywFO4eUA 提取码:iq7k 打开 VMware Workstati ...

  6. 三、Ubuntu16.04 安装Jira8.2.2(自带中文包)和破解

    一.环境准备 (一)安装java Jira7.2的运行是依赖java环境的,也就是说需要安装jdk并且要是1.8以上版本,如下: java -version没有任何显示需要下载安装 1.下载链接:ht ...

  7. 单调队列优化DP || [Poi2014]Little Bird || BZOJ 3831 || Luogu P3572

    题面:[POI2014]PTA-Little Bird 题解: N<=1e6 Q<=25F[i]表示到达第i棵树时需要消耗的最小体力值F[i]=min(F[i],F[j]+(D[j]> ...

  8. JS - this 总结

    this指向最后调用该函数的对象 // 示例一: var name = "windowsName"; function a() { var name = "Cherry& ...

  9. 枚举类enum应用以及注解@transient应用

    1.增加枚举类 public enum RightTypeEnum { AUTHORITY("访问权限") private String type; RightTypeEnum(S ...

  10. mybatis 的 DefaultVFS 日志乱码问题

    mybatis 的 DefaultVFS 日志乱码问题 mybatis  DefaultVFS 乱码  1. 问题描述 今天在启动同事搭建的工程时,发现 console 中乱码,细看下,是 mybat ...