Fork me on GitHub

高级前端面试题

 

面试题目一

  1. 跨域的基本概念和解决方法,在项目中的实际应用。
  2. JS事件循环和Node事件循环,两者有何区别。
  3. BFC,块级格式化上下文。
  4. 强缓存和协商缓存,缓存的应用,如何用在页面性能优化上。
  5. ES6新增特性。
  6. async await如何利用generator实现。参考
  7. 移动端点击穿透问题。
  8. Vue2.0与Vue3.0双向绑定,proxy实现。
  9. 爬虫方面问题,反爬如何实现,针对反爬的实现(IP代理等)。
  10. 图片懒加载具体实现方案和思路。
  11. 实习难点,收获。
  12. code review需要注意的点,你做code reivew的话,会重点查看哪里,怎么写出高内聚,低耦合的代码,以实习中遇到的一个通用组件实现举例。
  13. 未来规划,如何学习前端的,自己感兴趣的前端方向是什么。

面试题目二

  1. 常见攻击,CSRF是什么,如何防范,token产生策略。
  2. React Fiber原理。有什么优势。
  3. React生命周期,React16.3版本后变化,为什么要这样做。(结合React Fiber),有哪些不安全的生命周期。
  4. JS事件循环。
  5. 两列布局实现。
  6. 函数防抖,节流实现,不同方案实现。
  7. 二面主要在扯实习的事情,问了Redux原理,实习难点啥的,编程题实现一个EventBus和手写一个深拷贝。

面试题目三

  1. 弱网环境下页面首屏如何快速加载
    1. 方案:1.缓存的使用 2.SSR使用 3.骨架屏使用
  2. 跨域问题和解决方案
  3. 宏任务和微任务区别。
  4. node是IO密集型体现在哪里。
    1. 从node异步的角度来回答这个问题。
    2. 参考点这里➡️ https://www.jianshu.com/p/c28219029c65
  5. http2 http3优化点在哪 https建立连接过程
  6. 函数式编程思想的体现。
  7. 25匹马、5个赛道,怎么用最少的次数决出前三名
  8. CSRF攻击问题。
  9. 目中遇到的问题,重点说了下爬虫遇到的问题,如何解决反爬的。
  10. 实习遇到的问题,如何沟通,解决。
  11. 个人规划。

面试题目四

  1. js实现继承。
  2. 闭包。
  3. js事件循环。
  4. vue双向绑定实现原理。
  5. vue中指令的使用。
  6. vue中nextTick的原理。
  7. 虚拟dom以及diff算法。
  8. 错误监控方法。
  9. 页面加载会触发哪些事件。
  10. babel源码。
  11. setState原理。
  12. 实现一个EventEmitter类,支持事件的on,off,emit,once,setMaxListeners。
  13. document.ready和window.onload的区别。
  14. webpack loader和plugin区别。
  15. 打包gulp.webpack,rollup一些区别。
  16. webpack中循环引用问题,a里面引用了b,b里面引用了a. 
    1. 解决方案 ⬇️
    2. https://blog.csdn.net/gaoqiang1112/article/details/105412329
  17. CICD,如何实现一个自动化部署工具,结合github中的webhook机制。
  18. 全排列算法的实现。
  19. 斐波那契算法。
  20. 实习遇到的困难。实习期间干的事情。

面试题目五

    1. 1px问题。
    2. 浮动解决的方案。
    3. js基础类型,如何判断,有什么方法。
    4. 闭包问题。
    5. node事件循环。
    6. 进程和线程区别。
    7. cpu调度算法。
    8. 2台计算机底层之间如何通信 socket IO通信实现。
    9. 计算机网络中,http地址,在7层协议中,如何一步步向下解析,从应用层到最底层的物理层,每一层处理的事情。
    10. 位图和矢量图的区别。
    11. cookie中常见的字段。
    12. 同源策略。
    13. http中一些常见的响应头和请求头,有什么应用。
    14. 简单请求和非简单请求区别。
    15. 函数式编程思想。
    16. 如何自己实现一个单点登录系统。
    17. ts自己的看法,和应用。
    18. react fiber原理。
    19. http2.0 http3.0分别改进了什么
    20. 手写diff。
    21. 手写Promise.All()
    22. 算法题:版本号比较
      1. https://leetcode-cn.com/problems/compare-version-numbers/
    23. IP地址复原
      1. https://leetcode-cn.com/problems/restore-ip-addresses/


文章就分享到这,欢迎关注“前端大神之路

posted @ 2020-12-30 19:04  广东靓仔-啊锋  阅读(2508)  评论(0编辑  收藏  举报