❤ ES6-0【前言】

130 阅读3分钟

❤ ES6-0【前言】

对于ES6的认识:

首先是文章相关:

本文是基于阮大神的ECMAScript 6 入门然后写的一些自己的理解:

阮大神的个人地址为:

阮一峰

其次是相关的 ES6 的 图书: ES6入门教程

1、什么是ES6

ES6 全称 ECMAScript 6.0,是 JavaScript 的下一个版本标准,在 2015年6月份发版。

设计ES6的初衷是为了解决 ES5 先天就导致的一些不足之处。

2、了解ES和JS之间的关系

ES = ECMAScript 是一个动态脚本语言的‘标准’ JS = JavaScript是对ES的标准,默认,主流的‘实现’,

据说是因为存在商标权的问题,所以欧洲计算机协会制定的语言标准不能叫做JS,只能叫ES

3、ES6的用处是什么

先来看看ES6新标准的目的:

使得JS可以用来开发大型的Web应用,成为企业级开发语言 而企业级开发语言要求就是:适合模块化开发,拥有良好的依赖管理

也就是说前端越复杂庞大导致ES5无法满足,所以ES6是对ES5的增强和升级

4、ES6的兼容性

如果浏览器根本看不懂你写的let和const是什么东西报错了,那这就是浏览器对ES6的兼容性问题

1.主流的浏览器都已经全面支持ES6

2.行业内较新的前端框架都已经全面使用ES6的语法

3.微信小程序,uni-app等都是基于ES6的语法

5、 ES6 新增

(1)let 与const

  • let 和 const 是ES6新增的两个重要的JavaScript关键字。

    let声明的变量只能在let命令所在的代码块内有效

    const声明一个只读的常量,一旦声明,常量的值就不可以改变了,意味着一旦声明必须初始化,否则就会报错。

  • 1 常量:

    在简单类型上(数字,字符串,布尔),严格常量的效果,声明时必须要赋值,且不能修改。

    在复杂类型上(对象,函数,数组等),引用地址不能改,里面的属性值,元素等且可以修改。

  • 2 let和var的区别:

    • let只在自己声明的作用域有效

    • var是在全局作用域有效

    • tip: 少用var,尽可能的用let,因为var没有封装,容易污染别人的代码。

    • 同名的变量里,let不能重复声明,且只能声明一次。

    • var可以声明多次。for循环内改用let,而不是var。

  • 3 let严格遵守代码的顺序,不存在变量提升。而var声明的变量,会忽略声明的顺序,可以变量提升。

6、ES6的 Map 与 Set

  • Map对象保存键值对

  • 任何值(对象或者原始值) 都可以作为一个键或一个值。

  • Map 中的key:Key是(字符串,对象,NaN,函数)

  • Set 对象允许存储任何类型的唯一值,不管是原始值还是对象引用的。对象存储的值总是唯一的,需要判断两个值是否相等。

  • Maps 和 Objects 的区别:

一个Object 的键只可以是字符串或者 Symbols,而一个Map 的键可以是任意值。

Object都有自己的原型,原型链上的键名可能会和你自己在对象上的设置的键名产生冲突。

Map中的键值是有序的(FIFO原则),而添加到对象中的键则不是。

Map的键值可以对个数从 size 属性获取,而Object 的键值对个数只能手动计算。

ES6学习你能掌握

ES6属于中级难度,适合已经掌握 ES5 的读者,不适合未开始学习 JavaScript 语言的初学者

在ES6你能学到:

1、es6 是什么

2、箭头函数

3、解构赋值

4、字符串

5、数组

6、面向对象

7、类的继承

8、对象

9、Generator函数

10、async await