1.字符串模板 在ES6中允许使用反 ` 来创建字符串,这种方法创建的字符串里面可以包含由美元符号$加花括号包裹的变量${vraible}。 2.let与const关键字 可以把let看成var,只是它定义的变量被限定在了特定范围内才能使用,而离开这个范围则无效。let 定义的变量不会被变量提升。c ...
分类:
其他好文 时间:
2017-07-25 16:02:16
阅读次数:
139
let命令 ES6新增了let命令,用来声明变量,用法类似于var,但是所声明的变量只在let代码块中生效,并且在代码块中,使用let命令声明变量之前,变量都是不可用的,这在语法上被称为暂时性死区。 let无法存在变量提升现象,所以变量一定要在声明之后使用,否则会报错。 let无法重复声明同一个变量 ...
分类:
其他好文 时间:
2017-07-24 14:48:53
阅读次数:
137
上次分享了es6开发环境的搭建,本次接着分享es6常用的特性。 1.变量声明let和const 我们都是知道在ES6以前,var关键字声明变量。无论声明在何处,都会被视为声明在函数的最顶部(不在函数内即在全局作用域的最顶部)。这就是函数变量提升例如: 以上的代码实际上是: 所以不用关心bool是否为 ...
分类:
其他好文 时间:
2017-07-23 19:46:39
阅读次数:
183
let 声明了一个块级域的局部变量 const 声明一个块级域的只读的常量 let 和 const 共有的特性: 不存在变量提升 console.log(a); // undefined console.log(b); // Uncaught ReferenceError: b is not def ...
分类:
其他好文 时间:
2017-07-22 13:22:52
阅读次数:
134
一、let const 1.let命令:声明变量仅在块级作用域有效;let实际上为js新增了块级作用域 好处: -不存在变量提升; -内部声明的变量 函数 不会影响外部 -不可重复声明变量 2.const 声明常亮 声明时赋值 声明变量: 1.var 2.function (ES5 全局对象属性) ...
分类:
其他好文 时间:
2017-07-19 23:36:31
阅读次数:
210
追问 public class A{public void show { Person p=new Person(); }}就比如是这样的,我想把p这个局部变量提升到全局变量,按什么快捷键 追问 public class A{public void show { Person p=new Perso ...
分类:
系统相关 时间:
2017-07-15 12:51:27
阅读次数:
334
1. let 拥有块级作用域 *es6中不在有变量提升 2. class 通过extends进行继承 *super指父类 3. arrow function 并没有this, 直接继承外面this 4. template string `` 变量由$(x)表示 5. default function ...
分类:
其他好文 时间:
2017-07-13 22:49:04
阅读次数:
93
1、JS作用域 在ES5中,js只有两种形式的作用域:全局作用域和函数作用域,在ES6中,新增了一个块级作用域(最近的大括号涵盖的范围),但是仅限于let方式申明的变量。 2、变量声明 3、函数声明 4、变量提升 a情形 b情形 c情形 从上面可以看到,b情形和c情形为什么不同于a情形,就是因为变量 ...
分类:
Web程序 时间:
2017-07-13 00:48:27
阅读次数:
190
1.浏览器在解析时,会把var声明的变量提升到头部,这就叫做变量提升。 例如: console.log(a);var a = 1;console.log(a); 输出结果:undefined 1 说明: 上面的代码等同于:var a;console.log(a);a = 1;console.log( ...
分类:
其他好文 时间:
2017-07-10 10:28:22
阅读次数:
117
let和const let 用来声明变量,但是所声明的变量只在let命令所在的代码块内有效 { let a=12 alert(a)//12 } alert(a)//报错 找不到 let不像var那样会发生变量提升,所以一定要先声明后使用。 console.log(foo); //undefined ...
分类:
其他好文 时间:
2017-07-09 23:12:31
阅读次数:
184