前端/移动开发面试题 · 问题拆解 · JavaScript
前端/移动开发相关岗位面试题。
共 24989 道真题 · 当前筛选命中 774 道 · 更新 2026-08-05
筛选题目已选:问题拆解 · JavaScript
考察点
技术栈
第 61 题请手写一个深拷贝函数,并解释你的实现思路和潜在问题;如果遇到循环引用,你会如何处理? 考察深拷贝的实现细节、边界意识及循环引用处理能力第 62 题请解释JavaScript中的作用域、作用域链和闭包,并说明它们之间的关系。 考察JavaScript作用域机制与闭包的核心概念及内在联系第 63 题给定一个点分隔的字符串,如 aaa.bbb.ccc.ddd,请将其转换为嵌套对象,形如 {aaa:{bbb:{ccc:{ddd:{}}}},并说明你的实现思路。 考察字符串拆分与嵌套对象构建的编码实现能力第 64 题requestAnimationFrame是宏任务还是微任务? 考察对浏览器事件循环与任务调度机制的理解第 65 题JavaScript 中如何进行数据类型判断?请分别说明 typeof、instanceof 和 Object.prototype.toString 的适用场景与局限。 考察 JavaScript 类型判断的多种方法、边界情况与适用场景第 66 题请口述实现防抖(debounce)的思路,并说明其适用场景。 考察前端函数防抖的理解、实现思路与场景判断第 67 题请解释 JavaScript 的单线程模型,并说明它如何在单线程下处理异步操作。 考察对 JS 事件循环机制与异步处理原理的理解第 68 题如何解决回调地狱问题? 考察异步编程中回调嵌套的管理与现代化替代方案第 69 题浏览器是怎么解析JavaScript的? 考察对JavaScript引擎解析流程、执行上下文与事件循环机制的理解第 70 题请解释事件循环是什么,并分析下面代码的输出顺序:setTimeout(()=>console.log('timeout'),0); Promise.resolve().then(()=>console.log('promise')); console.log('sync'); 考察对事件循环、宏任务与微任务执行顺序的理解第 71 题请解释 JavaScript 事件冒泡和事件捕获的过程。 考察对 DOM 事件传播机制的理解第 72 题拷贝对象的方法有哪些?这些方法是深拷贝还是浅拷贝?使用 JSON 做深拷贝有哪些缺点? 考察对深浅拷贝语义的理解、常用拷贝手段及其适用边界第 73 题script的defer和async有什么区别? 考察对HTML脚本加载与执行时序的理解第 74 题请介绍 JavaScript 中的基本数据类型,并说明 Symbol 和 BigInt 的特点与适用场景。 考察对 JavaScript 基本数据类型及新增类型的理解深度第 75 题请手写代码实现:发起两个fetch请求,要求先等第一个请求返回,用其结果作为第二个请求的参数,将两个请求的结果放入同一个对象,再将该对象作为参数调用一个回调函数。 考察异步流程控制、链式调用与结果聚合第 76 题介绍一下 JavaScript 的事件循环机制。 考察对 JavaScript 异步执行模型与浏览器/Node 环境的理解第 77 题请谈谈你对 JavaScript 中异步编程的理解。 考察异步编程模型、事件循环与常见异步方案第 78 题请解释JavaScript的异步执行原理。 考察对JavaScript事件循环、宏任务与微任务机制的理解第 79 题请解释 Promise 和 async/await 的工作原理及两者的区别,并说明如何处理异步错误。 考察对 JavaScript 异步编程核心机制的理解与错误处理能力第 80 题Map、WeakMap是什么,有啥区别? 考察对ES6集合类型原理、引用管理与内存模型的理解