# 如何进行对象复制?算法
# 如何去除一个给定数组中的重复元素?算法
# 常用的查找算法有哪些?算法
# 常用的排序算法有哪些?算法
# React Router 的实现原理?React
# 在 React 中组件间如何通信?React
# 聊聊 React 组件的生命周期方法React
# Vue Router 的实现原理?Vue
# 在 Vue 中组件间如何通信?Vue
# 聊聊 Vue 组件的生命周期钩子Vue
# Vue3.0 新特性 Composition API 与 React.js 中 Hooks 的异同点?
# Vue3.0 编译做了哪些优化?Vue3.0是如何变得更快的?
# TypeScript 是如何进行类型推断的?TS
# 如何防范「跨站请求伪造(CSRF)」攻击?安全
# 如何进行大文件上传?JS
# 什么是「三次握手」和「四次挥手」?TCP
# 「前后端分离」是什么?如何实施?工程
# 如何进行性能优化?优化
# 如何进行首屏优化?优化
# 前端模块化方案有哪些?有何区别?JS
# 「Flux」与「Redux」有什么区别?JS
# 什么是「Fork-Join 模型」?如何实现?设计模式
# 常见的设计模式有哪些?设计模式
# DOM 事件的相关机制是怎样的?浏览器
# 离线存储方案有哪些?浏览器
# 浏览器是如何进行缓存的?浏览器
# JS 代码是如何执行的?JS
# 如何进行「跨域」?浏览器
# 什么是「事件循环」?JS
# 「MV*」模式之间有何区别?架构
# 浏览器内存增长的影响因素是什么?性能
# 浏览器的渲染流程是怎样的?浏览器
# 高清屏 1px 边框问题如何解决?CSS
# 如何实现支持多设备的 web 页面?浏览器
HTML, CSS, JavaScript
# 如何进行异步编程?JS
# .call()、.apply() 和 .bind() 三者之间有何异同点?JS
# 箭头函数有什么特点?JS
# 如何判断一个属性属不属于某个对象?JS
# 在 JS 中实现继承的方式有哪些?JS
# 什么是「原型链」?JS
# JS 的数据类型有哪些?如何判断一个变量的类型?JS
# 什么是「元编程」?编程范式
# 「面向对象编程」与「函数式编程」各自的优缺点是什么?编程范式
# 「命令式编程」与「声明式编程」的区别是?编程范式
# 聊聊对「中间件」的理解?JS
# 说说「saga」和「thunk」分别是什么?JS
# 聊聊 CSS 中的「层叠」与「继承」CSS
# 「格式化上下文」的定义及其影响因素是什么?CSS
# 讲讲「定位」与「浮动」?CSS
# 「盒模型」是什么?CSS
# script 标签的 defer 和 async 属性有什么区别?HTML
# 怎样进行 SEO?HTML
# 如何编写有语义的页面?HTML
# 在 CSS 中如何实现绝对居中?CSS
# 「回流」与「重绘」有何区别?性能
DOM