学习es6小记

es6学习笔记之 let 和 const来源

1.let 命令


es6新增 let 命令, 和 var 的用法相似, 都是用来声明变量.但是 let 所声明的变量, 只在 let 命令所在的代码块内有效.

{
    let a = 1;
    var b = 2;
}

a   // ReferenceError: a is not defined
b   // 1
复制代码

不会存在变量提升的问题

变量提升, 即变量可以在声明之前使用.值为 undefined. 为了纠正这种现象, let 命令改变了语法行为, 它所声明的变量一定要在声明后使用.

// var
console.log(num);   // undefined
var num = 10;

// let
console.log(str);   // ReferenceError
let str = 'aa';
复制代码

不允许重复声明

let a = 1;
console.log(a); // 1
let a = 2;  // SyntaxError: Identifier 'a' has already been declared
复制代码

2.const 命令


const 声明一个只读的常量. 一旦被声明, 常量的值就不能改变

const PI = 3.1415926;
PI  // 3.1415926

PI = 3; // TypeError: Assignment to constant variable.
复制代码

const 的作用域与 let 命令相同: 只在声明所在的块级作用域内有效.

if(true) {
    const VAL = 3;
}
VAL // ReferenceError: VAL is not defined
复制代码

const 声明的变量也和 let 一样不可重复声明.

var a = 1;
let b = 2;
// 以下都会报错 SyntaxError: Identifier 'a'|'b' has already been declared
const a = 3;
const b = 4;


复制代码

转载于:https://juejin.im/post/5c2c85706fb9a049d05dd862

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值