前端共264篇

面试题:如何在浏览器可视区域画一个最大的正方形?

这是一个考察对 CSS 布局、视口单位和响应式设计理解的面试题。 目标是创建一个在任何屏幕尺寸下都尽可能大,且保持为正方形,并完全位于可视区域内的元素。 核心思路 要画一个“最大”的正方形...
程序百科的头像-程序百科程序百科1年前
715

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

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

面试题:Vue Router 支持哪几种路由模式?它们有什么区别?

Vue Router 支持两种主要的路由模式,用于在单页面应用(SPA)中实现无刷新的页面切换: Hash 模式 (默认模式) History 模式 1. Hash 模式 实现方式:使用 URL 的 hash(#)部分来模拟一个完整...
程序百科的头像-程序百科程序百科1年前
7113

面试题:JavaScript 中判断数据类型的方式有哪些?

在 JavaScript 中,由于其动态类型和弱类型的特性,准确判断数据类型是开发中的常见需求。以下是几种主要的判断方式,各有优缺点和适用场景。 1. typeof 操作符 最常用的基础类型判断方法。 语...
程序百科的头像-程序百科程序百科1年前
715

面试题:mouseover 和 mouseenter 事件的区别是什么?

mouseover 和 mouseenter 都是鼠标进入元素时触发的事件,但它们在事件冒泡(或事件传播)的行为上有关键区别: 1. mouseover 事件 触发时机:当鼠标指针进入元素或其任何子元素时触发。 冒泡行...
程序百科的头像-程序百科程序百科1年前
7013

面试题:ES6 中,如何提取深度嵌套的对象中的指定属性?

在 ES6 及后续版本中,提取深度嵌套对象中的属性,最常用和推荐的方法是使用 解构赋值 (Destructuring Assignment),并结合 可选链操作符 (Optional Chaining, ES2020) 来安全地处理可能为 null...
程序百科的头像-程序百科程序百科1年前
706

面试题:Vue 中 data 的属性可以与 methods 中的方法同名吗?为什么?

不可以。在 Vue 中,data 的属性不应该与 methods 中的方法同名。 主要原因如下: 1. 命名冲突与覆盖(核心原因) Vue 在初始化组件实例时,会将 data 函数返回的对象中的所有属性,以及 method...
程序百科的头像-程序百科程序百科1年前
7012

面试题:React 中,父子组件如何进行通信?

在 React 中,组件通信是构建复杂应用的核心。父子组件通信是最基础、最常见的方式,其核心原则是 “数据单向流动” —— 数据从父组件流向子组件。 1. 父组件向子组件传递数据:通过 props 这...
程序百科的头像-程序百科程序百科11个月前
7011

面试题:CSS 预处理器 / 后处理器是什么?为什么要使用它们?

这是一个很好的前端工程化问题。下面是对 CSS 预处理器和后处理器的详细解释: 1. CSS 预处理器 (CSS Preprocessor) 是什么?CSS 预处理器是一种扩展 CSS 语法的工具,它允许你使用更强大、更灵...
程序百科的头像-程序百科程序百科1年前
7010

面试题:HTML 中,b 与 strong 标签的区别是什么?

<b> 和 <strong> 标签在默认的视觉呈现上非常相似,通常都会将文本显示为粗体(bold)。然而,与 <i> 和 <em> 的区别类似,它们在 语义(Semantics)和用途 上有着根本...
程序百科的头像-程序百科程序百科1年前
7010