我是靠谱客的博主 耍酷小松鼠,最近开发中收集的这篇文章主要介绍ES6小结1、let2、const3、解构赋值4、模版字符串5、简化对象写法6、箭头函数 7、函数参数的默认值设置8、rest参数9、扩展运算符10、扩展运算符的应用11、symbol12、迭代器13、生成器14、promise15、set16、Map17、class18、数值扩展 19、es6对象方法扩展20、模块化,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录

1、let

2、const

3、解构赋值

4、模版字符串

5、简化对象写法

6、箭头函数

7、函数参数的默认值设置

8、rest参数

9、扩展运算符

10、扩展运算符的应用

11、symbol

12、迭代器

13、生成器

14、promise

15、set

16、Map

17、class

1、class静态成员

2、class类继承

3、子类重写父类方法

4、class中get和set

18、数值扩展

1、最小精度

2、二进制(0b)、八进制(0o)、十进制、十六进制(0x)

3、检测是否为一个有限数

4、检测是否为一个NaN

5、Number.parseInt和Number.parseFloat 字符串转数字

6、判断是否为整数

7、将小数部分抹掉

8、判断一个数是正数、负数、零

19、es6对象方法扩展

1、Object.is判断两个值是否相等

2、Object.assign对象合并

3、Object.SetProtoypeOf设置原型对象

20、模块化

1、 优点

2、语法

3、通用导入方式

1、es6模块暴露数据语法汇总

2、es6引入模块数据汇总

4、模块化导入方式二


1、let

1、变量不能重复声明

2、块级作用域

3、不存在变量提升

4、不影响作用域链

2、const

1、一定要赋初始值

2、一般常量使用大写

3、常量的值不能修改

4、块级作用域

5、对于数组和对象的元素修改,不算做对常量的修改,不会报错

3、解构赋值

4、模版字符串

新的声明字符串的方式【``】(反引号)

1、内容中可以直接出现换行符

2、变量拼接

5、简化对象写法

允许在大括号中,直接写入变量和函数,作为对象的属性和方法

方法声明简化:

6、箭头函数

允许使用箭头(=>定义函数)

1、this是静态的,this始终指向函数声明时所在作用域下的this值

例如:就算使用call()函数也没有办法改变

2、不能作为构造实例化对象

3、不能使用arguments变量

4、箭头函数的简写

1、省略小括号:当形参有且只有一个时

2、省略花括号,当代码体只有一条语句时,此时return必须省略,语句的执行结果就是函数的返回值

5、适合与this无关的回调,例如:定时器,数组的方法回调

不适合与this有关的回调,例如:事件回调,对象的方法

7、函数参数的默认值设置

1、形参初始值,具有默认值的参数,一般位置要靠后

2、与解构赋值结合

8、rest参数

es6引入rest参数(…),用于获取函数的实参,用来代替arguments

rest参数必须要放在参数最后

9、扩展运算符

扩展运算符【…】能将数组转换为逗号分隔的参数序列

10、扩展运算符的应用

1、数组的合并

2、数组的克隆

3、将伪数组转换为真正的数组

11、symbol

类似于字符串的数据类型

1、特点:

1、symbol的值是唯一的,用来解决命名冲突的问题

2、symbol值不能与其他数据进行运算

3、symbol定义的对象属性不能使用for…in循环遍历,但是可以使用reflect.ownKeys来获取对象的所有键名

2、创建symbol

法1:

s2与s3不相等(就像名字一样但身份证不一样)

法2:

s4和s5相等

3、不能与其他数据进行运算(包括自己)

4、对象添加symbol类型的属性(用symbol创建一个独一无二的的方法)  

5、symbol内置值

1、hasInstance:当其他对象使用instanceof运算符,判断是否为该对象的实例时,会调用这个方法

12、迭代器

for…in:遍历的是键值

3、迭代器自定义遍历对象

13、生成器

其实就是一个特殊的函数,异步编程

yield相当于分割符,必须使用next()指针才能执行下一句

生成器函数参数:

14、promise

1、是一个构造函数,用来封装异步操作并可以获取其成功或失败的结果

15、set

set集合具有唯一性,会自动将重复的值去除

1、声明一个set

2、添加元素

3、删除元素

4、清空

5、数组去重

new set(arr)可以将其转化为类数组,而且里面的元素是不能重复的,接着“…”是扩展运算符,将类数组转为数组

6、交集

先使用[…arr,…arr2]给两个数组合并

再使用new Set()去重

最后再使用[…]将其转化成数组

7、差集

16、Map

1、

17、class

constructor构造方法,实例化时触发

class中的方法写法必须如上述的call(){},不可使用es5中的对象完整形式(例:call:function(){})

1、class静态成员

static标注的属性和方法只属于类不属于实例对象

2、class类继承

super(brand,price)相当于调用父类的构造方法

3、子类重写父类方法

子类重写父类同名方法

但是,在java中可以通过super()调用父类的方法(如下),但是在js中不可以

4、class中get和set

set必须要有形参

18、数值扩展

1、最小精度

应用:

2、二进制(0b)、八进制(0o)、十进制、十六进制(0x)

3、检测是否为一个有限数

4、检测是否为一个NaN

5、Number.parseInt和Number.parseFloat 字符串转数字

6、判断是否为整数

7、将小数部分抹掉

8、判断一个数是正数、负数、零

“1“代表正数,”0“代表0,”-1“代表负数

19、es6对象方法扩展

1、Object.is判断两个值是否相等

2、Object.assign对象合并

若有属性重名,则第二个对象将第一个覆盖

3、Object.SetProtoypeOf设置原型对象

获取原型对象

20、模块化

1、 优点

1、防止命名冲突

2、代码复用

3、高维护性

2、语法

1、export:用于规定模块的对外接口

2、import:用于输入其他模块提供的功能

3、通用导入方式

1、es6模块暴露数据语法汇总

1、分别暴露

2、统一暴露

3、默认暴露

调用时要通过default

2、es6引入模块数据汇总

1、通用方式

2、解构赋值形式

但是不能重名,需要给他一个别名

导入默认暴露

3、简便形式,只能用于默认暴露

4、模块化导入方式二

在app.js文件中进行模块引入

再在index.html中引入app.js文件

最后

以上就是耍酷小松鼠为你收集整理的ES6小结1、let2、const3、解构赋值4、模版字符串5、简化对象写法6、箭头函数 7、函数参数的默认值设置8、rest参数9、扩展运算符10、扩展运算符的应用11、symbol12、迭代器13、生成器14、promise15、set16、Map17、class18、数值扩展 19、es6对象方法扩展20、模块化的全部内容,希望文章能够帮你解决ES6小结1、let2、const3、解构赋值4、模版字符串5、简化对象写法6、箭头函数 7、函数参数的默认值设置8、rest参数9、扩展运算符10、扩展运算符的应用11、symbol12、迭代器13、生成器14、promise15、set16、Map17、class18、数值扩展 19、es6对象方法扩展20、模块化所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部