整体
async function async1() {
console.log("async1 start");
await async2();
console.log("async1 end");
Promise.resolve().then(() => {
console.log("children3");
});
// new Promise(funtion(){
// async2()
// }).then(function(){
// console.log("async1 end");
// 微任务中的微任务会放微任务队列的后边里边然后执行
// Promise.resolve().then(() => {
// console.log("children3");
// });
// })
}
async function async2() {
console.log("async2");
}
console.log("script start");
setTimeout(function () {
console.log("setTimeout");
}, 0);
async1();
new Promise(function (resolve) {
console.log("promise1");
resolve();
}).then(function () {
console.log("promise2");
});
console.log("script end");
// script start
// async1 start
// async2
// promise1
// script end
// async1 end
// promise2
// children3
// undefined
// setTimeout
console.log("start"); setTimeout(() => { console.log("children2"); Promise.resolve().then(() => { console.log("children3"); }); }, 0); new Promise(function (resolve, reject) { console.log("children4"); setTimeout(function () { console.log("children5"); resolve("children6"); }, 0); }).then((res) => { console.log("children7"); setTimeout(() => { console.log(res); }, 0); });
节流:第一次函数和最后一次会执行吗?第一次出发是延迟执行还是立即执行的
1. 时间戳:第一次立即执行
2. 第一次不立即执行,最后一次触发后也要delay延时啊?
3. 结合时间戳和定时器写法
整体2
1. 优化的原因是什么,业务哪一个指标比较重要,通过什么实现
首屏时间:
首次可交互时间:
首次有意义内容渲染时间:
tinypng
cdn预热:提前缓存
cdn刷新:原站有改变的时候,分发刷新全部cdn
react