ES6的let和const命令(一)
2017-05-04 20:13
302 查看
ES6新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变
量,只在let命令所在的代码块内有效。
let a=3;
let声明的变量只在它所在的代码块有效。
for循环的计数器,很适合使用let命令
var arr=[1,2,3,4,5];
for (let i=0;i<arr.length;i++){}
console.log(i);
运行结果:
程序报错。上面代码的计数器i是由let声明的,只在for循环体内有效。
如果i是由var声明的
var arr=[1,2,3,4,5];
for (var i=0;i<arr.length;i++){}
console.log(i);
最后输出的结果是:5
let声明变量的特性有以下几点:
1.不提升变量
先来看一组变量的声明
console.log(a);
console.log(b);
var a=2;
let b=2;
同样的2个未定义就使用的变量,但结果取不一样
因为变量a用var命令声明,会发生变量提升,即脚本开始运行时,变量a已经存在了,但是没有值,所以会输出undefined。变量b用let命令声明,不会发生变量提升。这表示在声明它之前,变量b是不存在的,这时如果用到它,就会抛出一个错误。
量,只在let命令所在的代码块内有效。
let a=3;
let声明的变量只在它所在的代码块有效。
for循环的计数器,很适合使用let命令
var arr=[1,2,3,4,5];
for (let i=0;i<arr.length;i++){}
console.log(i);
运行结果:
程序报错。上面代码的计数器i是由let声明的,只在for循环体内有效。
如果i是由var声明的
var arr=[1,2,3,4,5];
for (var i=0;i<arr.length;i++){}
console.log(i);
最后输出的结果是:5
let声明变量的特性有以下几点:
1.不提升变量
先来看一组变量的声明
console.log(a);
console.log(b);
var a=2;
let b=2;
同样的2个未定义就使用的变量,但结果取不一样
因为变量a用var命令声明,会发生变量提升,即脚本开始运行时,变量a已经存在了,但是没有值,所以会输出undefined。变量b用let命令声明,不会发生变量提升。这表示在声明它之前,变量b是不存在的,这时如果用到它,就会抛出一个错误。
相关文章推荐
- js变量中有var定义和无var定义的区别,es6中let命令和const命令
- es6学习-let和const命令
- ES6(01 基础 let和const命令)
- ES6 let和const命令
- ES6入门——let和const命令
- JS变量中有var定义和无var定义的区别以及es6中let命令和const命令
- ES6入门教程之let和const命令详解
- es6学习第一篇(let和const命令)
- ES6之let和const命令
- ES6学习2章:let和const命令
- 学习阮一峰的ES6(一)let和const命令整理
- es6-let和const命令 -- 001
- ES6 之 let 和 const 命令
- ECMAScript 2015(ES6):let和const命令
- es6学习篇之 let和const命令 、变量的解构赋值
- ES6的let和const命令
- let和const命令 — 学习ES6(一)
- ES6--let和const命令
- ES6 笔记: 2.let和const命令
- ES6--let和const命令