es6 变量声明方式
来源:互联网 发布:chipseq数据分析 编辑:程序博客网 时间:2024/06/05 20:45
## let
基本用法: let是用来生命变量。用法类似于var,但是let命令只在所处的代码块有效。
{ var a = 10; let b = 20;}console.log(a) //10console.log(b) //referenceError: a is not defined.
可以避免产生闭包:比如for循环。
//var 声明的i在全局范围内都有效,每次循环都会覆盖旧值。产生闭包。 for (var i = 0; i < 10; i ++) { a[i] = function () { console.log(i); }}a[6]() ; // 10//let 声明的i只在本轮循环有效,所以每一次循环的i都是一个新的变量。for (let i = 0; i < 10; i ++) { a[i] = function () { console.log(i); }}a[6](); //6
不存在变量声明提升。
console.log(foo); //2console.log(bar); //refferenceError 报错var foo = 2;let bar = 2;
暂时性死区。
var tmp = 123;if (true) { tmp = 'abc'; //referenceError let tmp;}
上面代码中,存在全局变量tmp,但是块级作用域内let又声明了一个全局变量tmP,导致后者绑定这个块级作用域,所以在let变量声明之前,对tmp的赋值会报错。
ES6中明确规定,如果区块中存在let和const命令,这个区块对这些命令声明的变量,从一开始就形成了封闭作用域,凡是在声明之前就使用这些变量就会报错。
使用typeof也是同理。在出现let等方式之前,typeof百分百不会报错,但是这种情况下,并不安全。与赋值同样会报错。
es6一共有6种声明变量的方法:
var 、function 、let 、const 、import、 class。
阅读全文
0 0
- es6 变量声明方式
- ES6的变量声明
- ES6-let变量声明
- ES6的变量声明
- ES6的声明变量
- ES6 变量、常量声明总结
- ES6声明变量和箭头函数
- ES6--变量的声明及解构赋值
- ES6声明变量的六种方法
- 再不用ES6就Out了--es6变量声明
- node与ES6系列1——变量声明
- ES6块级作用域及新变量声明(let)
- ES6语法学习阶段一:let和const 变量声明
- ES6学习之路1----变量的声明
- es6的四种声明变量的写法
- enum+数组的成员变量声明方式
- js变量类型及其声明方式
- C# 中变量的声明方式
- HDU 1000 A + B Problem
- 从头搭建java_linux运行环境
- 什么是堆排序
- 红黑树的删除—10张图学会
- SSL P2305 竞赛总分
- es6 变量声明方式
- session
- SDUT-2400-->数据结构实验之排序三:bucket sort
- SQL INSERT INTO SELECT
- position定位
- API Demos(6) AccessibilityService 无障碍辅助功能
- 【DevExpress】GridControl添加按钮列并添加按钮事件【转】
- Dos命令的巧用
- Aspose.cells导出Excel合并行单元格(Datatable)