前端/移动开发面试题 · 编码实现 · JavaScript
前端/移动开发相关岗位面试题。
共 24989 道真题 · 当前筛选命中 751 道 · 更新 2026-08-05
筛选题目已选:编码实现 · JavaScript
考察点
技术栈
第 181 题请说明 JavaScript 数组的 map 方法是否会影响原数组,并举例解释其返回值。 考察对数组高阶方法副作用的理解和知识准确性第 182 题请手写一个 JSON.stringify 的实现,并详细解释其原理。 考察对 JSON 序列化规范、数据类型处理和边界条件的理解第 183 题在前端开发中,如何实现对象的属性私有化? 考察对JavaScript闭包和模块封装机制的理解与实现能力第 184 题手写防抖和节流函数,并说明各自的应用场景。 考察对高频事件处理函数原理的理解、实现能力与实际应用区分第 185 题请口述实现一个Promise.all,并说明其工作原理。 考察对Promise并发控制及错误处理机制的理解与表达能力第 186 题请手写实现一个深拷贝函数,并说明其适用场景与局限性。 考察深拷贝实现能力、边界处理意识与原理理解第 187 题请解释JavaScript中this的指向规则,箭头函数中this的特点,并手写一个简单的call()实现。 考察对this绑定机制、箭头函数this特性及call方法原理的理解第 188 题解释可选链操作符(?.)的作用,并举例说明它如何避免访问深层嵌套对象属性时的错误。 考察对可选链操作符语法和实际用法的理解第 189 题字符串拼接上,ES6 跟之前有什么核心差异? 考察对 ES6 模板字符串特性的理解与实际应用第 190 题手撕:实现一个 add 方法,支持链式调用 add(1,2).add(3).add(4).output(),在调用 output() 时输出之前所有传入参数的和。 考察链式调用设计、闭包状态管理与算术累加能力第 191 题请在不使用Array.prototype.flat的情况下,将一个多维嵌套数组展平为一维数组,并说明你的实现思路。 考察数组遍历、递归或迭代实现及对flat原理的理解第 192 题请列举 Promise 的实例方法并阐述各自用途。 考察对 Promise 实例方法(then/catch/finally)的掌握第 193 题请解释ES5中如何实现类和继承,并说明其与ES6 class的主要区别? 考察对ES5原型链继承机制的理解及与ES6 class的对比第 194 题请手写实现Function.prototype.call方法,并说明实现思路。 考察对函数调用机制的理解、this绑定原理及边界处理能力第 195 题请手写实现一个深拷贝函数,要求能处理循环引用和常见数据类型。 考察深拷贝实现、递归边界和循环引用处理能力第 196 题请解释浏览器中深拷贝与浅拷贝的含义及实现方式。 考察对JavaScript中深拷贝与浅拷贝概念的理解及实现能力第 197 题如何实现一个 input 框,使其宽度根据输入内容自动变宽? 考察对前端文本尺寸测量与 DOM 同步机制的理解第 198 题请举例说明 instanceof 运算符的用法和适用场景。 考察对 instanceof 运算符语义及类型判断场景的理解第 199 题手写实现一个柯里化(Currying)函数,并说明它在实际业务中的应用场景。 考察函数式编程基础、闭包运用及业务抽象能力第 200 题如何使用原型链在 JavaScript 中实现继承?请给出一个具体示例。 考察通过原型链实现继承的具体编码能力,包括原型重定向和构造器调用