前端 JS 基础面试题共52篇

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

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

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

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

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

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

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

面试题:什么是 JavaScript 中的包装类型?

在 JavaScript 中,包装类型(Wrapper Types) 是一种特殊的对象类型,它为原始数据类型(Primitive Types)提供了方法和属性,使得我们能够像操作对象一样操作原始值。 1. 为什么需要包装类型...
程序百科的头像-程序百科程序百科9个月前
7511

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

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

面试题:JavaScript 其他值到布尔值的转换规则是什么?

在 JavaScript 中,当一个非布尔值被用于需要布尔值的上下文(如 if 语句、while 循环、逻辑运算符 ||/&&/! 等)时,JavaScript 会自动将其转换为布尔值。这个过程称为隐式类型转换或强...
程序百科的头像-程序百科程序百科9个月前
5111

面试题:常见的 DOM 操作有哪些?

DOM (Document Object Model) 操作是前端开发的核心技能之一。常见的 DOM 操作可以分为以下几大类: 1. 查找/获取元素 (Selecting/Getting Elements) 这是所有操作的前提。 document.getElement...
程序百科的头像-程序百科程序百科9个月前
4111

面试题:escape、encodeURI、encodeURIComponent 的区别是什么?

escape、encodeURI 和 encodeURIComponent 都是 JavaScript 中用于对字符串进行编码的函数,主要用于处理 URL 或查询参数中的特殊字符。但它们的作用范围、编码规则和现代推荐程度有显著区别。 ...
程序百科的头像-程序百科程序百科9个月前
5610

面试题:JavaScript 中 substring 和 substr 函数的区别是什么?

这是一个经典的 JavaScript 字符串操作面试题,考察对字符串截取方法的理解。 substring()、substr() 和 slice() 功能相似但有重要区别。 ✅ 核心区别总结 方法参数是否支持负数状态推荐度subst...
程序百科的头像-程序百科程序百科9个月前
3510

面试题:const 对象的属性可以修改吗?

这是一个很好的面试题,答案是:可以,在大多数情况下。 const 关键字在 JavaScript 中的作用是创建一个常量引用,而不是创建一个不可变的值。这需要根据 const 声明的是什么类型的值来具体分析...
程序百科的头像-程序百科程序百科9个月前
4410