v-model实现父子之间通信 vue实现双向数据绑定: 每一个key有一个dep,当渲染时,会触发getter,dep会收集这个组件的watcher,如果需要更改,会通知watcher,触发组件重新渲染。 组件首次渲染的时候,触发了该属性的getter,dep会收集正在渲染的组件的watcher,在修改时,dep会通知它收集的所有watcher,执行更新函数。 promise.any([])会访问第一个成功的promise,如果没有promise成功,就返回reject。如果传入的是一个空数组,就会立刻返回reject。 promise.all([])如果promise都成功就返回reslove(),如果有一个失败就返回reject()。 promise.race([])返回第一个成功的promise,无论是成功还是失败。 promise.allSettled([])返回所有的promise,无论成功还是失败。 隐式转化== 布尔值和字符串,如果和数字比较,会转成数字。 null==undefined 对象和原始数据比较,对象会通过valueOf()或者toString()转化成原始数据再比较。 [].toString()为"",""转化为数字为0