前端 JS 基础面试题共52篇

JavaScript 是前端开发的核心语言,掌握其基础是开发网页应用的必备技能。JavaScript 基础面试题的考察重点包括数据类型、作用域、闭包、原型链、事件处理、DOM 操作、定时器、异步编程(如回调函数)以及常见的内置对象和方法。

面试题:JavaScript 脚本延迟加载的方式有哪些?

JavaScript 脚本的延迟加载(Lazy Loading)指的是将脚本的加载或执行推迟到特定时机,以优化页面初始加载性能,避免阻塞关键渲染路径。它与异步加载(async)有重叠,但更侧重于“推迟”这一行...
程序百科的头像-程序百科程序百科4个月前
536

面试题:JavaScript 中怎么删除数组最后一个元素?

这是一个基础但高频的 JavaScript 面试题。删除数组最后一个元素有多种方法,以下是几种常用方式及其区别: ✅ 方法一:pop() —— 最常用、最推荐 const arr = [1, 2, 3, 4]; const lastElemen...
程序百科的头像-程序百科程序百科4个月前
3312

面试题:Object.is() 与比较操作符 == 和 === 的区别是什么?

Object.is()、==(相等)和 ===(严格相等)都是 JavaScript 中用于比较两个值是否相等的操作,但它们在处理某些特殊情况时有显著区别。 一、核心区别概览 比较方式名称是否有类型转换特殊情况...
程序百科的头像-程序百科程序百科4个月前
607

面试题:JavaScript 如何判断一个对象是否属于某个类?

在 JavaScript 中,判断一个对象是否属于某个类(或更准确地说,是否由某个构造函数创建或在其原型链上)有多种方法,各有优缺点和适用场景。 1. instanceof 操作符 作用:检查一个对象在其原型...
程序百科的头像-程序百科程序百科4个月前
3812

面试题:typeof null 的结果是什么?为什么?

typeof null 的结果 typeof null 的结果是 'object'。 这是一个在 JavaScript 早期就存在的历史遗留 bug。 为什么是 'object'? 1. 历史原因(C 语言风格的实现) JavaScript 的最初版本(由 Br...
程序百科的头像-程序百科程序百科4个月前
7315

面试题:说说你对 JSON 的理解?

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。它基于 JavaScript 的一个子集,但作为一种独立于语言的文本格式,被广泛用于系统间的数据传输和存储。 1. 基本语法与结构 JSO...
程序百科的头像-程序百科程序百科4个月前
3713

面试题:JavaScript 的 splice 和 slice 函数会改变原数组吗?

这是一个非常典型的 JavaScript 面试题,考察对数组方法副作用的理解。 ✅ 直接答案: splice():会改变原数组 ✅ slice():不会改变原数组 ❌ 🔍 详细解释 1. splice() —— 会修改原数组 spli...
程序百科的头像-程序百科程序百科4个月前
527

面试题:JavaScript 中 || 和 && 操作符的返回值是什么?

在 JavaScript 中,||(逻辑或)和 &&(逻辑与)操作符的返回值并不总是布尔值。它们会返回实际参与比较的操作数之一,而不是简单的 true 或 false。 这是由 JavaScript 的短路求值(Sh...
程序百科的头像-程序百科程序百科4个月前
4612

面试题:use strict 是什么意思?使用它有什么区别?

'use strict'; 是 JavaScript 中的一个指令,用于开启严格模式(Strict Mode)。它不是一条语句,而是一个字面量表达式,告诉 JavaScript 引擎以更严格的标准来解析和执行代码。 你可以将 'use ...
程序百科的头像-程序百科程序百科4个月前
3812

面试题:JavaScript 中 null 和 undefined 的区别是什么?

null 和 undefined 都表示“无”或“空值”,但在 JavaScript 中有明确的区别。理解它们的不同是掌握 JavaScript 类型系统的关键。 一、核心区别总结 特性undefinednull含义“未定义” —— 变...
程序百科的头像-程序百科程序百科4个月前
2411