排序
面试题:Sass、Less 是什么?为什么要使用它们?
Sass 和 Less 都是 CSS 预处理器(CSS Preprocessors),它们扩展了 CSS 的功能,通过引入编程特性(如变量、嵌套、混合、函数等),让 CSS 更强大、更易维护、更适合团队协作和大型项目开发。 ...
面试题:什么是 JavaScript 中的包装类型?
在 JavaScript 中,包装类型(Wrapper Types) 是一种特殊的对象类型,它为原始数据类型(Primitive Types)提供了方法和属性,使得我们能够像操作对象一样操作原始值。 1. 为什么需要包装类型...
面试题:在 React 自定义组件中,render 函数是可选的吗?为什么?
在 React 中,render 函数是否可选,取决于你使用的是哪种组件定义方式: 1. 对于类组件 (Class Components) render 函数是必需的(不可选)。 为什么? render 方法是 React 类组件的核心生命...
面试题:Vue 计算属性的函数名和 data 中的属性可以同名吗?为什么?
不可以。在 Vue 中,计算属性(computed)的函数名不能与 data 中的属性同名。 如果尝试这样做,Vue 会抛出一个明确的运行时错误。 为什么会报错? Vue 的设计原则是确保数据来源的唯一性和可预...
面试题:为什么 JavaScript 函数的 arguments 参数是类数组而不是数组?如何遍历类数组?
这是一个很好的问题,它触及了 JavaScript 语言设计和历史演变的细节。 为什么 arguments 是类数组(Array-like),而不是真正的数组? arguments 对象是函数内部的一个特殊对象,它包含了函数...
面试题:JavaScript 如何使用 for…of 遍历对象?
这是一个常见的面试题,考察对 JavaScript 迭代机制的理解。 核心答案: 普通的 JavaScript 对象(Object)默认是不可迭代的,因此不能直接使用 for...of 遍历。 但可以通过一些方法使其支持 fo...
面试题:React 项目中,如何动态改变组件的 class 来切换样式?
在 React 项目中,动态改变组件的 class 来切换样式是一个常见的需求。这可以通过多种方式实现,包括直接操作 className 属性、使用状态管理以及借助第三方库来简化样式处理。以下是几种主要的...
面试题:CSS 的 flex 布局有什么好处?
这是一个非常经典且重要的 CSS 面试题,考察对现代布局技术的理解。Flexbox(弹性盒子布局)是 CSS3 中引入的强大布局模型,它极大地简化了复杂布局的实现。 核心好处总结 Flexbox 的主要优势在...
面试题:为什么 Vue 要求组件模板只能有一个根元素?
这个问题在 Vue 2 和 Vue 3 中有不同的答案,因为 Vue 3 引入了 Fragment(片段)支持,已经不再强制要求组件模板必须只有一个根元素。 一、在 Vue 2 中:为什么必须有且仅有一个根元素? 在 Vu...
面试题:React.createClass 和 extends Component 有哪些区别?
React.createClass 与 extends Component 的区别 这是 React 发展过程中的一个重要变化,主要体现在 React 15.5 版本之前和之后的写法差异。 1. 语法定义区别 React.createClass (旧版) // Reac...
