前端面试分享

作者: brandonxiang | 来源:发表于2019-04-18 00:00 被阅读6次

问题一,为何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);

相关文章

网友评论

    本文标题:前端面试分享

    本文链接:https://www.haomeiwen.com/subject/jkwcpftx.html