ES6新特性(var与let关键字)

一、ES6语法的简介

浏览器:javascript 三个部分: ECMAScript + BOM + DOM 服务器:javascript = ECMAScript + 系统内置的核心模块(fs http)

ECMAScript 是什么? 是一个 规范。 ECMA 是一个组织协会,协会专门负责制定各种规则。他们制定了一个 ECMAscript 规范,规定脚本语言实现。变量声明 var function fnName 有哪些语言实现这个规范: 1. JavaScript 2. actionScript(flash 动画 flash小游戏)

var的弊端及let关键字

使用var关键字声明变量的弊端:

1、var声明的变量有预解析,造成 逻辑混乱,可以先使用,后声明

2、var可以重复定义同一个变量,逻辑错误,第二次应该是修改变量,而不是定义

3、var用在for循环条件中,造成for 循环的污染的问题

4、var 声明的变量没有块级作用域(ES5中的作用域:全局和局部

let的特点:

1、let声明的变量没有预解析,不会有变量提升

2、let不可以重复定义同一个变量

3、let用在for循环条件中,不会造成for 循环的污染的问题

4、let声明的变量有块级作用域(ES6中的作用域:全局和局部还有块级作用域)

// 1、var声明的变量有解析,造成 逻辑混乱,可以先使用,后声明
// var a = 10;
// console.log(a);

// 2、var可以重复定义同一个变量,逻辑错误,第二次应该是修改变量,而不是定义
// var a = 10;
// var a = 30;
// console.log(a);

// 3、var用在for循环条件中,造成for 循环的污染的问题
// for(var i=0; i<10; i++){
//     console.log(i);
// }
// console.log("=====================");
// console.log(i);

// 4、var 声明的变量没有块级作用域(ES5中的作用域:全局和局部)
// {
//     var b = 200;
// }
// console.log(b);

上面这些弊端,都在 ES6中的let关键字中得到解决:

// console.log(a);   //报错
// let a = 10;

// let a = 10;
// let a = 30; //报错


// for(let i=0; i<10; i++){
//     console.log(i);
// }
// console.log("=====================");
// console.log(i);    //报错


{
    let b = 200;
}
console.log(b);   //报错

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值