排序
面试题:React 是否必须使用 JSX?为什么?
不,React 并不强制要求使用 JSX。 JSX 是一个语法扩展,它允许你在 JavaScript 代码中编写类似 HTML 的标记。虽然在现代 React 开发中 JSX 几乎是标配,但从技术上讲,你完全可以不用它。 1. ...
面试题:什么是无状态组件?无状态组件的应用场景有哪些?
这是一道考察React组件设计模式的经典面试题,重点在于理解函数式编程思想和组件最佳实践。 下面从定义、特点、应用场景、以及与有状态组件的对比来拆解。 一、核心定义 什么是无状态组件? 无...
面试题:CSS 中 flex: 1 是什么意思?
在 CSS 中,flex 属性是用于 Flexbox 布局模型中的一个简写属性,它能够定义 flex 项目的扩展能力、收缩能力和基础大小。 flex: 1 这种写法实际上是一个简写形式,默认情况下它是 flex: 1 1 0 ...
面试题:说说 px、em、rem 的区别及使用场景
面试题:说说 px、em、rem 的区别及使用场景 px、em、rem 是 CSS 中常用的长度单位,它们在参考基准、继承行为和响应式能力上有显著区别。理解它们的差异对于构建可维护、可访问、响应式的网页...
面试题:如何判断网页元素是否到达可视区域?
这是一个非常实用的前端面试题,常用于实现懒加载、无限滚动、埋点曝光等场景。判断元素是否进入可视区域有多种方法,从简单到高级逐步演进。 ✅ 方法一:使用 getBoundingClientRect()(兼容性...
面试题:什么是 JavaScript 中的包装类型?
在 JavaScript 中,包装类型(Wrapper Types) 是一种特殊的对象类型,它为原始数据类型(Primitive Types)提供了方法和属性,使得我们能够像操作对象一样操作原始值。 1. 为什么需要包装类型...
面试题:Vue 表单修饰符 .lazy 有什么作用?
在 Vue 中,.lazy 是 v-model 的一个表单修饰符 (Form Modifier),它的主要作用是将 v-model 的数据同步时机从默认的 input 事件改为 change 事件。 详细解释: 默认行为 (input 事件): 在默认...
面试题:Vue 中有哪些表单修饰符和事件修饰符?
在 Vue.js 中,修饰符(Modifiers)是通过点(.)语法附加到指令(如 v-model 或 v-on)上的特殊后缀,用于以声明式的方式改变指令的行为。它们主要分为表单修饰符(用于 v-model)和事件修饰符...
面试题:为什么 Vue 中的 data 属性是一个函数而不是一个对象?
这是一个 Vue.js 面试中的经典问题,考察对组件实例化机制和数据隔离的理解。 核心答案:在 Vue 组件中,data 必须是一个函数,而不是一个对象,是为了保证每个组件实例都能拥有自己独立的数据...
面试题:什么是 React 中类组件和函数组件?它们有什么区别?
在 React 中,类组件(Class Component) 和 函数组件(Function Component) 是定义 UI 组件的两种主要方式。随着 React Hooks 的引入,函数组件的功能大大增强,逐渐成为主流。 一、基本定义 ...
