获得徽章 1
- #青训营笔记创作活动#
12月10日 打卡day4
今日学习:
1. 在ES6中,我们可以使用Promise对象来处理异步操作,使异步操作能够以同步操作的方式表达出来,简单来说,Promise对象让我们可以控制异步操作的执行顺序。
2. then()和catch()默认会返回一个值为undefined的Promise对象,这也就能解释为什么可以使用链式语法了。当然也可以用return来显式地返回新的Promise对象,这个新的Promise对象显然会覆盖值为undefined的Promise对象。
3. 对于async/await,简单一点总结:async返回的是一个Promise对象;只有在async函数内部才可以使用await;await后面一般只接一个Promise对象。在async函数中,JavaScript引擎从上到下执行代码,如果遇到await,会等await后面的异步操作完成之后,再执行await代码。
4. 除了用Promise构造函数来创建Promise对象,还可以用Promise.resolve()和Promise.reject()来创建一个Promise对象。区别在于Promise构造函数创建出来的的Promise对象的状态一开始是不确定的,而Promise.resolve()创建的是一个fuifilled状态的Promise对象,Promise.reject()创建的是一个rejected状态的Promise对象。展开赞过评论1 - #青训营笔记创作活动#
12月9日 打卡day36
今日学习:
1. key虽然是写在模板里面的,但是它是服务于vue内部的,虚拟DOM里面会有key属性(diff算法所必需的),但最后生成的真实DOM里面没有key这个属性。
2. 用index作为key并不能说一定有问题,如果对数据进行了破坏顺序的操作(逆序删除、逆序添加)就会出现问题。
3. 不写key这个属性vue会默认把index作为key。展开赞过评论1