-
BFC是什么,怎么使用?
什么是BFC?看这一篇就够了 -
宏任务与微任务
async function fn1 () { await fn2() console.log(1); } async function fn2 () { console.log(2); } console.log(3); setTimeout(function(){ console.log(4) },0); fn1(); new Promise((resolve, reject) => { console.log(5); resolve() return new Promise((resolve, reject) => { console.log(6) resolve() }).then(()=>{ console.log(7) }) }).then(() => { console.log(8); }) console.log(9); // 3,2,5,6,9,1,7,8,4
-
深复制
function deepClone(obj) { function isObj(objParams) { return typeof objParams === 'object' && objParams !== null; } if(!isObj(obj)) { return obj; } const result = Array.isArray(obj) ? [] : {}; for(let i in obj) { if(isObj(obj[i])) { result[i] = deepClone(obj[i]); } else { result[i] = obj[i]; } } return result; }
-
全排
-
vue的defineProperty和proxy实现对比
-
promise源码
…待续