ES6高级核心重难点知识梳理

1.Promise简介

名称描述
PromisePromise是异步操作的一种解决方式可以解决回调地域的问题使用时,需要实例化:new Promise(()=>{})

2.Promise的状态

名称描述
pendingPromise的未完成状态
fulfilledPromise的成功状态
rejectedPromise的失败状态

3、Promise的方法

名称描述
resolve调用该方法,Promise的状态会由pending变成fulfilled,表示成功示例:
new Promise((resolve,reject)=>[resolve()3)
reject调用该方法,Promise的状态会由pending变成rejected,表示失败示例:
new Promise((resolve,reject)=>[ reject())
then1、有两个回调函数;当Promise状态变化时,会执行对应的回调函数:Promise状态由pending->fulfilled时,执行then的第一个回调函数 Promise状态由pending:>rejected时,执行then的第二个回调函数
2、then方法执行后,会返回一个新的Promise对象。默认返回的是成功状态的Promise对象
catch1、用来处理reiected (失败)状态
2、建议在Promise对象后面写上catch方法,这样可以处理Promise内部发生的错误
finally当Promise状态发生变化时,无论状态如何变化,都会执行(了解即可)

4、Promise的简写形式

名称描述
Promise.resolve()成功状态Promise的一种简写形式,等价于(了解即可)
new Promise(resolve =>{resolve())
Promise.reject()失败状态Promise的简写形式,等价于 (了解即可):new Promise(reject =>[ reject() })

5、Promise的其他方法

名称描述
Promise.all()1、关注多个Promise对象的状态变化。
2、传入多个Promise实例,会返回一个新的Promise实例。
3、Promise.all0)的状态变化与传入的多个Promise实例对象的状态有关:多个实例的状态都变成resolved,Promise.all0)的最终状态才会变成resolved只要有一个实例的状态变成rejected,Promise.all()的最终状态就变成rejected。
Promise.race()、关注多个Promise对象的状态变化。
2、传入多个Promise实例,会返回一个新的Promise实例。
3、Promise.race()的状态取决于第一个完成的Promise实例对象如果第一个完成的实例成功了,Promise.race()就是成功的;如果第一个完成的实例失败了,Promise.race()就是失败的 (了解即可)。
Promise.allSettled()1、关注多个Promise对象的状态变化。
2、传入多个Promise实例,会返回一个新的Promise实例。
3、Promise.allSettled()的状态与传入的Promise实例状态无关。它永远都会执行成功的回调函数。并且记录各个Promise实例的表现 (了解即可)。

6、class类

名称描述
class定义类的关键字
constructorclass中的构造方法,可以省略不写;
实例化时,构造函数中的代码会执行,常用来初始化。
new实例化构造函数或者类的关键字
this在constructor,this指向实例
在静态方法中,this指向类
static声明静态属性和静态方法,其中定义静态方法还处于提案中,了解即可
extends继承,子类继承父类时,可以使用该关键字。
super作为函数使用:
1、继承时,在子类的constructor中,super指代父类的构造函数
super
2、作为函数使用时,super虽然代表父类的构造方法,但是内部的this指向子类的实例
作为对象使用:
1、在子类的构造方法(constructor)或一般方法中使用,super代表父类的原型对象定义在父类实例上的属性或方法,无法通过super调用;通过super调用父类的方法时,方法内部的this指向当前的子类的实例
2、在静态方法中使用,super指向父类。通过super调用父类的方法时,方法内部的this指向当前的子类,而不是子类的实例

7、module模块化

名称描述
module模块系统。
将代码按照功能分割成不同的模块,然后按模块开发;开发完成后,再用module关联各个模块形成一个完整的项目。
将script标签的type属性,设置成module,可以加载模块。
例1:引入外部文件<script src=模块路径”type="module"></script>例2:直接在script标签里书写代码<script> type="module">// 模央代码</script>

8、module的导入导出

名称描述
import关键字,用来导入模块内的内容:
1、使用export default和export 导出的内容可以使用import关键字导入
2、一个模块没有导出,也可以将其导入;此时被导入的代码都会执行一遍,也仅会执行一遍3、如果一个模块中,既有export default导出默认值,又有export导出其他值,可以使用import同时导入。导入时,使用export default导出的变量要写在使用export导出的变量的前面4、import关键字具有提升效果。它导入的内容,会提升到整个模块顶部,率先执行。
export
default
导出默认值:
一个模块只能有一个export default;
导入时语法是:import变量名from“路径
export导出多个内容;
一个模块可以有多个export;
导入时语法是:import[变量名}from"路径
as给模块起别名;
导出时,可以起别名;语法: export 变量名as 别名)
导入时,也可以起别名;语法: import[变量名as别名from"路径"
*整体导入;
语法: import*as别名from"路径"

9、module的注意事项

名称描述
this模块顶层作用域中的this指向undefined
import()import方法,它与关键字import不一样,它可以按条件导入 (了解即可)

10、相关指令

Node.js
Node.js是一个平台或工具,它上面可以运行后端代码。Babel等依赖包,需要运行在这个平台上。

名称描述
npmnode包管理工具。可以利用npm初始化项目、安装项目所需要的插件()
node -V查看node的版本号
npm -V查看npm的版本号
npm init初始化项目
npm install

安装依赖包。

1、执行npminstall,可以把packageison中记录的依赖包,都下载下来2、可以使用该指令下载某个具体的依赖包。指令如下:
npminstall包名

--save-dev安装的包是开发依赖,该包仅在开发阶段使用
npm config set registry https://registry.npm.taobao.org

将下载源切换成国内的。使用npm下载时,包源在国外,下载速度可能会很慢。可以使用该指令,可以将包源切换成国内的,这样可以提升下载速度。

该指令只需执行一遍。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BvemiL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值