
ES6常用语法

ES6是什么
ECMAScript 6.0(也可以称为ECMAScript2015),ECMAScript 6.0简称 ES6,是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。
1、块级作用域(let、const)
- 块级作用域,就是其使用范围只有在{}中起作用,不像之前var定义的变量都是函数级作用域。
- let 和 const不允许重复声明变量
- let 和 const 声明的变量不会在预解析的时候解析(没有变量提升,需要先声明再使用)
- let 声明的变量的值可以改变,const声明的变量值不可以改变,且声明的时候必须赋值。
2、解构赋值
从数组和对象中提取值,对变量进行赋值
1 | //数组解构 |
3、模板字符串
反引号(``),变量(${})
1 | const msg = 'hello world' |
3.1、 字符串扩展- includes函数
判断字符串中是否存在指定字符,返回布尔值,存在则为true,不存在则为false
1 | let name = "chenyuxiang" |
3.2 、字符串扩展- repeat函数
repeat()函数返回一个新的字符串,表示将原字符串重复n次
1 | let str = 'x' |
4、数组扩展
4.1、扩展运算符,数组合并
扩展运算符(spread)是三个点(...)。将一个数组转为用都好分隔的参数序列
1 | console.log(...[1,2,3]) //1 2 3 |
4.2 、Array.of
将一组值转化为数组,即新建数组
1 | let arr =Array.of(1,2,3) // [1,2,3] |
4.3、 find方法
(1)该方法主要应用于查找第一个符合条件的数组元素
(2)它的参数是一个回调函数。在回调函数中可以写你要查找元素的条件,当条件成立为true时,返回该元素。如果没有符合条件的元素,返回值为undefined
1 | let arr = [11,12,13,14,15] |
5、对象扩展 Object.assign
Object.assign()方法用于对象的合并,将源对象(source)的所有可枚举属性,复制到目标对象(target)。
1 | const target = { a: 1 }; |
6、Set
ES6 提供了新的数据结构 Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。
1 | const s = new Set() |
通过 add() 方法向 Set 结构加入成员,结果表明 Set 结构不会添加重复的,Set 函数可以接受一个数组作为参数
1 | const set = new Set([1,2,3,4,4]) |
向Set加入值的时候,不会发生类型转换,5>和“5”是两个不同的值
1 | const mySet = new Set() |
6.1、 size属性
返回 Set 实例的成员总数
1 | const item = new Set ([1,2,3,4,5,5,5,5]) |
6.2、 delete()
删除某个值,返回一个布尔值,表示删除是否
1 | var mySet = new Set(); |
6.3 、has()
返回一个布尔值,表示该值是否为Set的成员
1 | var mySet = new Set(); |
6.4、 clear()
1 | var mySet = new Set(); |
7、箭头函数
箭头函数作为普通函数的一个补充,将this指向了函数体之外最近一层的this,而不是向普通JS一样将this指向window变量。
1 | var name = "cyx" |
提示
箭头函数里面根本没有自己的 this ,而是引用外层的 this。对于普通函数来说,内部的 this 指向函数运行时所在的对象,但是这 一点对箭头函数不成立。它没有自己的 this 对象,内部的 this 就是定 义时上层作用域中的 this
8、最后其他es6常用的语法
promise对象 (JavaScript进阶之Ajax的问题和什么是promise))