那伤。 2022-05-04 13:48:38
这个规则是不是可以总结成:
不同类型时;根据符号两边的数据类型按照优先顺序做隐式转换
优先级为,
1、对象
2、字符串
3、数字
对象会优先转化成数字或字符串(根据判断的另一个数据类型)再进行比较;
其中当有布尔对象时,转化为数字比较:
console.log(true == ['true'])//false
console.log(false == [])//true
那伤。 2022-05-03 04:15:21
先说结果,大概30秒多点,30秒是因为每个等待10秒,同步执行。
其实还有一个变种:
function wait() { return new Promise(resolve => setTimeout(resolve, 10 * 1000) ) } async function main() { console.time(); let a = wait(); let b = wait(); let c = wait(); await a; await b; await c; console.timeEnd(); } main();
这个的运行时间是10s多一点,这是因为:a,b,c的异步请求会按顺序发起。而这个过程是不需要互相依赖等待的。等到wait的时候,其实是比较那个异步耗时最多。就会等待最长。最长的耗时就是整体的耗时。
如果在业务中,两个异步没有依赖关系。应该是后面这种写法。
- 共 1 页
- 1
个人猜想:
vue的更新策略就是:深度优先、同层比较。就是只比较同层级,也就是 O(n)
第 97 题:React 和 Vue 的 diff 时间复杂度从 O(n^3) 优化到 O(n) ,那么 O(n^3) 和 O(n) 是如何计算出来的?