看了阮老师的ES6入门再加上自己的一些理解整理出的学习笔记 let关键字 跟var相比,不会提升为全局变量,始终是块级作用域{} 注意点: 1: 不能在同一个块级作用域内声明同名变量 2: (如果当前块级作用域内{}内部没有该变量的声明)向上级作用域查找,如果有声明,就只在本块级作用域中查找 let ...
分类:
其他好文 时间:
2017-04-12 13:13:50
阅读次数:
151
作用域、作用域链 一、Js以前没有块级作用域,不过在ES6中有let了。 二、Js使用函数作用域 三、声明提前 四、Js的作用域链 Inter的作用域链 找到就停止查找返回数据,找不到就延作用域链查找,直到Global也查不到就返回报错; 五、Js的作用域链在执行前已经被创建 闭包 一、闭包:是指有 ...
分类:
其他好文 时间:
2017-04-12 11:00:40
阅读次数:
171
作用域、作用域链 一、Js以前没有块级作用域,不过在ES6中有let了。 二、Js使用函数作用域 三、声明提前 四、Js的作用域链 Inter的作用域链 找到就停止查找返回数据,找不到就延作用域链查找,直到Global也查不到就返回报错; 五、Js的作用域链在执行前已经被创建 闭包 一、闭包:是指有 ...
分类:
其他好文 时间:
2017-04-11 16:53:29
阅读次数:
228
1.let let可以声明块级作用域变量 2.const const可以声明常量 3.Destructuring 解构 解构赋值允许使用类似数组或对象字面量的语法将数组和对象的属性赋给各种变量。 4.对象解构 5.字符模板 6.字符串相关函数 7.函数默认值 8. ...操作符 ...
分类:
其他好文 时间:
2017-04-10 00:30:01
阅读次数:
128
本章全部的整理自“ECMAScript 6 入门”,希望大家看完能去买书,让这本开源的书不至于亏本! 本章总共5个题目,分别是: 1.let命令 2.块级作用域 3.const命令 4.顶层对象的属性 5. global对象 先说说我对这几个的个人理解,我觉得let将会逐步替代var,因为var存在 ...
分类:
其他好文 时间:
2017-04-06 17:39:42
阅读次数:
153
继续小实验,上次写到块级作用域,那么为什么需要块级作用域呢?书中给了两个场景: 1.没有块级作用域,内层变量可能会覆盖外层变量。举例: 内层的tmp变量把外层的tmp变量覆盖,所以输出结果为undefined 2.用来计数的循环变量泄露为全局变量,举例: 外层依然可以使用内层的i,所以仍然可以正常输 ...
分类:
其他好文 时间:
2017-04-02 20:00:20
阅读次数:
273
一.babel转换器:babel.js.io; 二.变量声明. 1.块级作用域let: 2.常量const:一旦声明不可改变,一般用来引入模块,例如:const moment=require("moment"); 三.类Class 四.箭头函数arrow function 1.简化写法 2.使用箭头 ...
分类:
其他好文 时间:
2017-04-02 00:35:52
阅读次数:
160
ES6新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。换句话说,let声明了块级作用域。 输出 看下面代码: 输出: 变量i是var声明的,在全局范围内都有效,所以全局只有一个变量i。每一次循环,变量i的值都会发生改变,而循环内被赋给数组a的 ...
分类:
其他好文 时间:
2017-04-01 22:45:24
阅读次数:
206
1、作用域 “javascript没有块级作用域”。所谓“块”,就是大括号“{}”中间的语句。例如if语句: 再比如for语句: 所以,我们在编写代码的时候,不要在“块”里面声明变量,要在代码的一开始就声明好了。以避免发生歧义。如: 在声明变量时,全局代码要在代码前端声明,函数中要在函数体一开始就声 ...
分类:
编程语言 时间:
2017-03-30 11:30:19
阅读次数:
259
block:语句块 (或其他语言中的 复合语句) 用来组织零个或多条语句. 包含在{ }里面 通常在流程控制语句 (如 if, for, while)中使用 块级作用域:通过var声明的变量没有块级作用域. 在语句块(block)里声明的变量作用域是其所在的函数或者 script 标签内, 你可以在 ...
分类:
其他好文 时间:
2017-03-27 10:50:38
阅读次数:
133