掌阅科技面试题 · 技术原理
掌阅科技相关面试题,按最终去重题目聚合。
共 340 道真题 · 当前筛选命中 271 道 · 更新 2026-08-05
筛选题目已选:技术原理
考察点
技术栈
第 1 题请解释二分法查找的基本原理,并说明在什么样的情况下可以使用二分查找。 考察二分查找的基本思想、适用条件及时间复杂度第 2 题Spring的@Autowired和@Resource有何区别? 考察Spring依赖注入注解的差异与选用场景第 3 题依赖怎么划分 考察对前端依赖管理、构建打包和架构设计的基本认知第 4 题说说防抖和节流 考察对前端性能优化中防抖与节流机制的理解及应用能力第 5 题请解释 nextTick 的实现原理。 考察对 Vue 异步更新队列和微任务机制的理解第 6 题请实现一个数组拍平函数,将任意嵌套的数组转换为一维数组,并说明如何处理深层嵌套和性能问题。 考察对递归与迭代编程、边界处理及复杂度分析的能力第 7 题请描述各层(如表示层、应用层、网络层等)之间传输的数据类型或格式分别是什么? 考察对协议栈或分层架构中数据封装与传输格式的理解第 8 题在 JavaScript 中,如何避免闭包滥用带来的内存泄漏或逻辑问题? 考察对闭包原理的理解及内存与性能风险的排查能力第 9 题请解释AOP(面向切面编程)的概念,并说明JDK动态代理与CGLIB代理的区别。 考察对AOP核心思想及两种动态代理机制原理与适用场景的理解第 10 题React 的事件系统是如何工作的?例如 onClick 事件是直接绑定到当前 DOM 节点(BOM)上吗?onScroll 事件又有什么不同? 考察对 React 合成事件、事件委托和原生事件关系的理解第 11 题请说明PPP协议的作用和主要组成部分,并简述其工作流程。 考察对点对点协议PPP的组成、功能和工作机制的理解第 12 题apply、call、bind的区别是什么? 考察对JavaScript函数调用方式及this绑定的理解第 13 题在 Vue 2 中,为什么通过 push 等方法修改数组可以被监听? 考察对 Vue 2 数组响应式拦截原理的理解第 14 题同一个微信用户打开两个不同的小程序时,其 openid 是否一致? 考察对 openid 定义及小程序间用户标识隔离机制的理解第 15 题你使用过自定义函数吗?请列举并说明常见的自定义函数类型。 考察对自定义函数概念和类型的掌握,以及实际应用能力第 16 题请解释 DOM0、DOM1、DOM2 事件处理模型的主要区别。 考察对 DOM 事件模型演进的掌握程度第 17 题Redis常见的数据结构和应用场景有哪些? 考察对Redis核心数据结构的理解及其典型应用场景的掌握第 18 题请解释JavaScript中变量声明与函数声明提升的交互,并说明为什么下面的代码会报错:function foo(){}; var foo; foo(); 考察JS提升机制中函数声明与变量声明同名时的处理方法第 19 题如何判断一个链表是否有环?请说明思路和时间复杂度。 考察链表遍历与双指针算法的应用第 20 题请描述使用 XMLHttpRequest 发起一次 Ajax 请求的完整流程,并说明 readyState 各状态码的含义。 考察对 Ajax 核心机制和状态机变化的掌握