1.面向对象和类的关系?2.什么是Promise、3.Promise和async、await的关系
面向对象:
面向对象是一种编程思想(oop)。
(Js里面所有的东西都可以看做对象,Js它是基于原型的面向对象语言,采用原型的方式来构造对象)
很多个具有相同属性和行为的对象就可以抽象为类,对象是类的一个实例。JavaScript在ECMAScript 6中引入了类的概念。
(js 中所谓的 类 就是构造函数, 对象就是由构造函数创建出来的实例对象。)
面向对象的三个基本特征:
封装:
就是将一类事物的属性和行为抽象成一个类,使其属性私有化,行为公开化,隐藏对象属性和实现细节,仅对外提供访问形式,提高安全性和代码复用性。
继承:
则是进一步将一类事物共有的属性和行为抽象成一个父类,而每个子类拥有父类的行为和属性,也有自己特有的行为和属性,扩展了已存在的代码块,进一步提高了代码的复用性。
多态:
是指允许不同类的对象对同一消息做出不同响应,从一定角度来 看,封装和继承几乎都是为多态而准备的,类中多个方法的重载叫多态,父子类中方法的覆盖也叫多态。提高了软件 的可重用性和可扩充性。
二、什么是promise
Promise 是异步编程的一种解决方案:
语法上来说,Promise 是个构造函数,new Promise创建了一个实列化对象,内部一般可以封装一个异步操作,
resolve,reject 是 promise 内部提供好给你的两个函数
成功调用 resolve
失败调用 reject
使用promise 对象
p.then(res => {...}) 处理成功.catch(res => {...}) 处理失败
2)从本意上讲,它是承诺,承诺它过一段时间会给你一个结果。
promise有三种状态: pending(等待态),fulfiled(成功),rejected(失败)
Promise和async、await的关系
async 可以创建一个异步函数
异步函数的返回值会自动封装到一个promise中返回
在async声明的异步函数中可以使用await关键字来调用异步函数