ES6与class类+原型与原型链+promise

ES6 与 class “类”`

## class类
	Es5如果要要生成一个对象实例,,需要先定义一个构造函数,然后通过new操作符来完成。
	Es6引入clss“类”这个概念通过class关键字可以定义累
## ES5中的继承 (组合继承:原型链继承 + 借用构造函数)
	原型链继承:
	1.父类的实例作为子类的原型
	借用构造函数继承:
	2在子类内,使用call()调用父类方法,并将父类的this修改为子类的this.
	相当于是把父类的实例属性复制了一份放到子类的函数内.
	组合继承:
	3.既能调用父类实例属性,又能调用父类原型属性

一、ES6中的class继承
1. class相当于es5中的构造函数
2. class中定义方法时,前后不能加function,全部定义在class的prototype属性中
3. class中定义的所有方法是不可枚举的
4. class中只能定义方法,不能定义对象,变量等
5. class和方法内默认都是严格模式
6. class中子类通过extends继承父类
7. es5中constructor为隐式属性
	

Javascript 原型链与原型

	每一个构造函数下都有一个prototype叫做显性原型
	每一个实例都有一个 --proto--叫做隐式原型
	实例是隐式原型 构造函数是显示原型

consturctor

	每个prototype原型都有一个consturctor属性指向他关联的构造函数
	constructor方法是类的构造函数的默认方法,通过new命令生成对象实例时,自动调用该方法。
	constructor方法如果没有显式定义,会隐式生成一个constructor方法。
	所以即使你没有添加构造函数,构造函数也是存在的。constructor方法默认返回实例对象this,
	但是也可以指定constructor方法返回一个全新的对象,让返回的实例对象不是该类的实例。

原型链

	获取对象属性时如果对象本身没有这个属性,那就会去他的原型--proto--上去找如果还找不到就去找
	原型的原型一直找到最顶(object.prototype)为止object.prototype对象也有--proto--属性值为null

Promise是什么

Promise 是异步编程的一种解决方案,其实是一个构造函数,
自己身上有all、reject、resolve这几个方法,原型上有then、catch等方法。

promise是异步编程解决方案 
1. 主要用于异步计算
2. 可以将异步操作队列化 按预期的顺序执行
3. 用链式 .then 解决回调地狱问题
4. 无法取消  一旦创建就会立即执行 中途无法取消
5. 代码好维护
promise的构造函数有两个参数 一个是resolve 用.then 接收 另一个是reject 用.catch 接收

## Promise的两个特点和三大状态

|特点|
1.Promise对象的状态不受外界影响
Promise的状态一旦改变,就不会再变,任何时候都可以得到这个结果,状态不可以逆,只能由 pending变成fulfilled或者由pending变成rejected
|状态|1)pending 初始状态
(2)fulfilled 成功状态
(3)rejected 失败状态

reject的用法

以上是对promise的resolve用法进行了解释,相当于resolve是对promise成功时候的回调,它把promise的状态修改为fullfiled,那么,reject就是失败的时候的回调,他把promise的状态修改为rejected,这样我们在then中就能捕捉到,然后执行“失败”情况的回调。

catch的用法

与Promise对象方法then方法并行的一个方法就是catch,与try  catch类似,catch就是用来捕获异常的,
也就是和then方法中接受的第二参数rejected的回调是一样的

all的用法

与then同级的另一个方法,all方法,该方法提供了并行执行异步操作的能力,并且在所有异步操作执行完后并且执行结果都是成功的时候才执行回调。

race的用法

all是等所有的异步操作都执行完了再执行then方法,那么race方法就是相反的,谁先执行完成就先执行回调。先执行完的不管是进行了race的成功回调还是失败回调,其余的将不会再进入race的任何回调

Promise Apl

then()方法
then 方法就是把原来的回调写法分离出来,在异步操作执行完后,用链式调用的方式执行回调函数。

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值