前端八股文

随着准备面试汇总一些我觉得重要的面试考点。这个是目录,随着复习随着更新


JS基础

  • 原型对象和原型链.
  • 作用域、作用域链和执行上下文.
  • JS继承.
  • ✅数据类型
  • ✅类型判断 (Object.prototype.toString.call)
  • ✅var、const、let 对比
  • new 的过程.
  • this 指向问题
  • bind 实现方式.
  • ✅闭包
  • 事件循环 【超高频】和node中的区别
  • 手写 Promise 手写Promise.
  • asnyc&await.
  • 异步&同步
  • ✅深拷贝&浅拷贝
  • ES6新语法
  • ✅实现多页签通讯
  • ✅原生JS遍历时获取下标的三种方式
  • JS垃圾回收机制
  • 事件流(冒泡 捕获) 事件委托
  • BOM DOM
  • 数组的操作方式(哪些改变原数组)
  • for循环的方法(为什么Object不能for of)
  • 迭代器
  • meta SEO
  • 词法分析 语法分析
  • 箭头函数
  • JS数据类型转换

CSS

  • 盒模型
  • 选择器及其等级
  • 完成扇形 三角形
  • 常见的布局问题
  • 伪元素 伪类

操作系统

  • 进程 线程(协程)

一些不知道怎么分类的内容

前后端通讯

  • 输入 URL 到页面展示 【超高频】
  • 跨域 【超高频】
  • HTTP 各版本 (通常是由缓存带出来的问题)参考
  • HTTPS 原理 【高频】https协议.
  • ✅TCP 三次握手、四次挥手
  • ✅HTTP请求/响应过程
  • ✅TCP 和 UDP 区别
  • HTTP 常见状态码
  • ✅OSI网络七层模型
  • ✅ 传输层有什么协议
  • ✅HTTP2.0 3.0
  • get和POST请求
  • 鉴权
  • 强缓存 协商缓存
  • 请求头有什么
  • 状态码
  • WebKit渲染流程
  • websocket
  • 浏览器的多进程 和 多线程

安全

  • 有哪些安全问题?
  • 解决的办法。
  • XSS
  • CSRF

工程化

  • 页面性能优化 【超高频】(传输优化、渲染优化)
  • webpack 性能优化
  • Webpack打包流程
  • VITE
  • 常用的webpack插件
  • loader&plugins
  • CommonJS和ES6 的区别(TreeShaking)
  • babel polyfill
  • 内存泄漏怎么查 怎么解决
  • 白屏问题(SSR或者阻塞等)
  • SSR

REACT

VUE

  • 和React 的区别,为什么16.8之前Vue性能更优
  • Diff(我被要求手撕过)
  • 响应式原理(数据劫持和Proxy)
  • MVVM和MVC的区别
  • 常用语法糖
  • 两种路由(高频!)
  • 组件间通信
  • nextTick
  • watch和computed
  • keep-alive和show
  • 生命周期
  • VueX
  • mutation&actions

TypeScript

  • ts 中 type 和 interface 的区别
  • ts 中如何实现一个函数的重载
  • 手写ts 的工具函数

手撕

  • promise.all
  • reduce
  • map
  • new
  • bind
  • 节流防抖
  • 扁平化
  • 深拷贝
  • 继承
  • merge assign
  • 快排 归并
  • Diff算法
  • eventEmitter
  • 获取URL后面的参数
  • 伪数组的处理(这不是一道单独的题,但是很多都会用到)

数据结构与算法

这一部分我已经刷过一遍了,刷的时候并没有按照前端和后端分开刷题,数据结构多掌握一些总是没有问题的。全部流程过了一遍大概一个月200+道题,最近忙着准备项目放下了一阵,会一边复习一边按照顺序更新。
前端现在也是靠算法的!朋友们 冲!

参考资料

[1] 我背透了这些前端八股文https://blog.csdn.net/Y0W1as5eg37urFdS/article/details/113777492

Logo

前往低代码交流专区

更多推荐