何为异步,何为同步,一篇简短的文章让你看懂;
异步:
异步最经典的就是http请求,比如ajax,axios,setTimeout等,异步就是程序在处理中还没处理完时,不会影响后面的程序执行,你可以理解把异步操作放在一个盒子里,他处理完了拿到结果自己从盒子里出来。
常见问题:
我们需要这个异步操作处理完了才执行下面的操作怎么办,放在以前我们会怎么做,这个函数处理完了,在调取另一个函数,有的索性直接不封装函数,一个方法吧逻辑全部写完,这样看起来代码冗余不说,函数调用的时候灵活性太低,有些函数我们一个页面用四次,那你把这段逻辑复制四次吗,当然不是,我们都是函数封装一次,直接调用四次,那么问题来了,函数一调用完,我们要根据返回的参数调取函数二,函数二调用完要根据返回值调取函数三,如果我们层层嵌套,这样太深了也会导致代码看起来不简洁不明了,有了es6的promise,我们就可以调取他的回调方法.then()或者.catch()方法来进行处理后面的函数调用了,不懂得可以去我主页看promise详解的文章
同步:
同步就是处理的时候我后面程序就不能执行,必须等我处理完在执行后面的程序
常见问题:
同步常见问题就是有时候我们一段代码可能要执行好几秒,那这样就会照成程序卡顿,这样怎么办,简单,吧同步变成异步即可,es6新出的promise完美解决这个问题,不懂得可以去我主页看promise详解的文章