同步与异步
同步: 一件事情做才能开始下一件事
异步: 多个事情同时并发执行
异步操作:
setTimeout 异步任务
当一个操作开始执行后,主程序无需等待它的完成,可以继续向下执行。
此时该操作可以跟主程序同时(并发)执行。
异步任务:
ajax异步网络通讯技术
setTimeout()
异步任务:
1. 两个或两个以上的任务,同时并发执行
2. 主程序启动一个任务之后,这个任务与主程序同时并发执行
异步任务的结果,由回调函数处理
promise
=>作用: 处理异步任务结果,更优雅,更好的一种方式.
=>Promise对象学习
let promise = new Promise(function(resovle,reject){
//封装异步任务
//resolve 成功的处理
resolve('成功结果')
//reject 失败处理
reject('失败结果')
})
总结:
1. 处理异步任务时使用Promise
2. 创建一个promise对象,在对象的中封装具体的异步任务
2.1 成功的结果交给resolve处理
2.2 失败的结果交给reject处理
3. 在其它地方处理异步任务结果
promise对象的then函数中处理成功的结果
promise对象catch函数中处理失败的结果
promise使用示例如下:
明白了原理后,在我么日常写代码中,可以封装一段专门的工具函数,来直接调用,简化我们以后的代码
Promise封装如下: