排序
面试题:为什么在 React 中使用 className 而不是 class?
在 React 中使用 className 而不是 class 来指定 HTML 元素的 CSS 类,主要原因如下: 1. JavaScript 语言保留字冲突 这是最核心的原因。 class 是 JavaScript (ES6) 中的一个保留关键字,用于...
面试题:React 的触摸事件有哪些?
在 React 中,为了支持移动设备上的触摸交互,提供了一系列触摸事件(Touch Events)。这些事件与原生 DOM 的触摸事件一一对应,但遵循 React 的合成事件系统(SyntheticEvent),并采用驼峰命...
面试题:HTML 中,label 标签的作用是什么?如何使用?
<label> 标签是 HTML 中一个非常重要的表单辅助元素,它的主要作用是为表单控件(如 <input>、<textarea>、<select>)提供一个可点击的标签(标题),从而提升表单的可...
面试题:说说 CSS 中 position: absolute 与 fixed 的共同点和区别
这是一个考察 CSS 定位机制核心知识的经典面试题。理解 absolute 和 fixed 的异同,是掌握页面布局的关键。 共同点 脱离文档流 (Removed from Normal Flow): 两者都会使元素完全脱离正常的文档...
面试题:为什么有时候用 translate 来改变位置而不是定位?
这是一个关于 CSS 性能优化和渲染机制 的核心问题。使用 transform: translate() 而不是传统的 position(如 top/left)来改变元素位置,主要是出于性能和渲染效率的考虑。 下面详细解释原因: ...
面试题:为什么 JavaScript 函数的 arguments 参数是类数组而不是数组?如何遍历类数组?
这是一个很好的问题,它触及了 JavaScript 语言设计和历史演变的细节。 为什么 arguments 是类数组(Array-like),而不是真正的数组? arguments 对象是函数内部的一个特殊对象,它包含了函数...
面试题:说说你对 ES6 中 rest 参数的理解?
ES6(ECMAScript 2015)引入的 Rest 参数(Rest Parameters)是一种非常实用的语法特性,它允许我们将一个不确定数量的参数表示为一个数组。它的核心思想是“收集剩余的参数”。 1. 基本语法 Re...
面试题:为什么 Vue 要求组件模板只能有一个根元素?
这个问题在 Vue 2 和 Vue 3 中有不同的答案,因为 Vue 3 引入了 Fragment(片段)支持,已经不再强制要求组件模板必须只有一个根元素。 一、在 Vue 2 中:为什么必须有且仅有一个根元素? 在 Vu...
面试题:当 Vue 的属性名称与 methods 中的方法名称一样时,会发生什么问题?
当 Vue 组件中的 data 属性名称 与 methods 方法名称 相同时,会引发一个命名冲突,导致数据属性被方法覆盖,从而产生严重问题。 会发生什么? 数据属性被覆盖: Vue 在初始化组件实例时,会将 ...
面试题:什么是 React 的 getDefaultProps?它有什么作用?
getDefaultProps 是 React 早期(使用 React.createClass 方式) 用于为组件定义默认 props 的一个特殊方法。 历史背景与现状 属于 React.createClass:getDefaultProps 是在 React 使用 React....
