最近在学ES6,这个同步异步把我给看蒙了。今天总算有点灵感,貌似能理顺出来。
首先确定概念(港真我其实挺不能确定的。但是好困啊明天再查吧今天不赶紧记下来就忘了_(:з」∠)_)
同步:
几个步骤必须按照先后顺序执行,如果前序步骤未能完成,将不会执行后续步骤。
异步:
几个步骤可以“并行”地执行,业务逻辑上的前序步骤,无法阻塞业务逻辑上的后续步骤的执行。
我一直按照以上的定义来理解异步和同步,所以就很懵:说好的Promise解决的是异步回调地狱的问题,可Promise内部的多个ajax等异步操作不是也有先后顺序的吗??
哎不对哎,如果是异步,咋会有回调地狱啊?
之所以要回调回调再回调,不就是要保证前面的ajax跑完了,数据得到了之后,再执行下一个ajax吗?这不是同步吗??
今天总算有些明白了:Promise所谓的解决异步的回调地狱问题,是将Promise当成一个整体,跟Promise外部的其他代码来说的。
而我前面所说的,在Promise 内部,则应该是有先后顺序的——应该,还没确定。
以上只是一点自学的心得。目前还在慢慢摸索,如果确信找到了正确答案,再回来更新一下吧。