问题一,为何event loop要分为宏任务和微任务
问题二,react和vue的dom diff算法有所不同
参考传统diff、react优化diff、vue优化diff
问题三,ningx怎么更新一个文件
问题四,tree shaking和eliminate dead code的区别
问题五,Promise.resolve()的then后catch接着then,请问最后一个then会执行吗?
问题六,浏览器的渲染流程,reflow和repaint发生在哪个阶段
问题七,jsx的解析原理
问题八,es module存在的意义,和commonjs的区别
Last but not least,正则取值
var parseQuery = function(query){
var reg = /([^=&\s]+)[=\s]*([^=&\s]*)/g;
var obj = {};
while(reg.exec(query)){
if(!obj[RegExp.$1]){
obj[RegExp.$1] = RegExp.$2;
} else if(Array.isArray( obj[RegExp.$1])) {
obj[RegExp.$1].push(RegExp.$2)
} else {
obj[RegExp.$1] = [obj[RegExp.$1], RegExp.$2]
}
}
return obj;
}
var jerry = parseQuery("name=jerry&age=1&name=123");
console.log(jerry);
var tom = parseQuery("name=tom&age=12&gender&");
console.info(tom);
网友评论