- 1、localStorage、sessionStorage场景与用法
- 2、对微前端的了解:乾坤、garfish、无界等
- 1.子应用是如何加载的
- 2.应用之间运行时如何隔离的
- 3.应用之间是如何通信的
- 4.路由劫持
- 3、对页面屏幕录制与回放的了解:rrweb、timecat等
- 4、对indexeDB的了解。
html+css
- 1.DOM解析流程
- 2.position属性 (static、relative、absolute、fixed、sticky的区别)
- 3.重绘、重排,以及触发条件
- 4.flex布局
- 5.水平垂直居中实现方案 (固定宽度 和 不固定宽高)
js
- 1.javascript中的call和apply和bind
- 2.前端模块化的理解
- 3.箭头函数特点
- 4.函数柯里化
- 5.函数防抖与函数节流实现
- 6.浏览器的事件循环机制 事件循环,宏任务(渲染事件、请求、script、setTimeout、setInterval、Node中的setImmediate、I/O 等), 微任务(promise.then()、queueMicrotask()、MutationObserver(监听DOM)、node 中的 process.nextTick等)
- 7.8种数据类型,数据类型判断方法
- 8.会改变原数组的9个方法(pop、push、shift、unshift、reverse、sort、splice、fill、copyWithin)
- 9.JS隐式类型转换规则, 重点加法
- 10.[Map与WeakMap的区别]
vue
- 1.Vue组件间通信方式
- 2.自定义指令模拟v-model
- 3.vue双向数据绑定原理
- 4.vue2与vue3的区别
- 5.computed底层实现原理
- 6.nextTick底层实现原理
- 7.vue3的diff算法实现,以及其最长递增子序列的实现原理
- 8.vue-router中2种路由模式的实现原理
webapck
- 1.提升webpack打包速度有哪些方法?
- 2.webpack中处理scss文件时需要使用哪些loader
- 3.loader和plugin的区别
- 4.如何进行代码拆分
http协议
- 1.使用GIF上报打点的原因,为啥大多采用的是1*1像素的透明GIF来上报?
- 2.前端常见跨域解决方案
- 3.web安全攻击手段以及如何防范
- 4.http各版本及https简要介绍
- 5.为什么连接的时候是三次握手,关闭的时候却是四次握手?
- 6.为什么TIME_WAIT状态需要经过2MSL(最大报文段生存时间)才能返回到CLOSE状态?
- 7.为什么不能用两次握手进行连接?
- 8.如果已经建立了连接,但是客户端突然出现故障了怎么办?
- 9.Get请求与Post请求的区别
- 10.HTTP协商缓存VS强缓存原理
性能优化
nodejs
- 1.洋葱模型实现原理
- 2.Nodejs如何开启多个子进程
- 3.cluster模块为什么可以让多个子进程监听同一个端口
- 4.Nodejs如何排查内存泄漏问题?
- 5.Nodejs的事件循环机制
算法题
-
2.消息的订阅与发布
-
- 利用中介Array.reverse()的反转数组的特性
- 不利用任何方法,手动创建新字符串,判断与目标字符串是否相等
- 从字符串的头和尾开始,依次比较字符串组是否相等,逐渐往中间收,如果全部相等,则是回文
-
4.统计字符串中出现最多次数的字符及其次数 输入 s = 'asfedahjkuaaggraaa' 输出 'a' 7
-
5.给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度 输入 s = 'abcabcbb' 输出 3