携程面试题 · JavaScript
携程相关面试题,按最终去重题目聚合。
共 2142 道真题 · 当前筛选命中 71 道 · 更新 2026-08-05
筛选题目已选:JavaScript
考察点
技术栈
第 21 题图片懒加载的实现 考察图片懒加载的触发机制、性能优化和边界处理第 22 题请说明 Window.fetch API 的基本用法和主要特点。 考察对前端原生网络请求 API 的掌握程度第 23 题举例说明事件委托的具体应用场景 考察事件委托机制的理解、实际应用与性能优化意识第 24 题请手写实现一个数组拍平(flat)方法,并说明其边界情况如何处理。 考察对递归/迭代实现的理解、边界处理能力和编码表达第 25 题为什么需要宏任务?请解释宏任务产生的背景和用途。 考察对事件循环中宏任务角色和必要性的理解第 26 题call、apply、bind有什么区别? 考察JavaScript函数调用上下文绑定的基本概念与应用场景第 27 题关于 Promise 的错误处理,解释为什么 try/catch 无法捕获 Promise 内部的异步错误。 考察对 Promise 异步执行机制与错误传播方式的理解第 28 题请说明 JavaScript 中如何判断数据类型,并比较 typeof 与 instanceof 的适用场景和局限。 考察对 JavaScript 类型系统及类型判断方法的理解第 29 题import 和 import() 有什么区别? 考察对 ES 模块静态导入与动态导入机制的理解第 30 题let和var区别 考察JavaScript变量声明作用域与提升机制的理解第 31 题请手写实现一个基于 Proxy 的对象变化监听器。 考察 Proxy 的基本用法与对象变化监听能力第 32 题Object.prototype.a = 10; var obj = {b: 20}; Object.defineProperty(obj, 'c', {enumerable: false, value: 30}); for (let k in obj) {console.log(k);} 输出是什么? 考察 for-in 遍历可枚举属性及原型链行为第 33 题请手写实现一个简单的响应式对象,要求属性变化时自动触发依赖更新。 考察响应式原理、依赖收集与触发更新的实现能力第 34 题请用 JavaScript 编写一个 class 来模拟浏览器的路由跳转,并说明你的实现思路。 考察对 class 语法、路由状态管理与事件模拟的理解第 35 题async/await与Promise的用法完全等价吗?请指出它们在使用场景或行为上的差异。 考察对async/await与Promise差异的辩证理解第 36 题请解释v-lazy指令的原理及其在Vue中的实现方式。 考察Vue自定义指令与懒加载库的集成原理,以及指令钩子的作用第 37 题基于原型的继承有什么主要缺点?如何规避或改进? 考察对原型继承局限性的理解与方案权衡第 38 题请解释 JavaScript 中的原型和原型链。 考察对 JavaScript 原型继承机制的理解第 39 题宏任务和微任务有什么区别? 考察对事件循环中任务队列类型、执行顺序和经典场景的理解第 40 题如何判断一个元素是否在视口(viewport)中?你了解曝光(impression)检测吗? 考察前端视口判断方法的掌握以及对曝光埋点应用的理解