前端共256篇

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

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

面试题:Vue 中 MVVM、MVC 和 MVP 模式的区别是什么?

这是一个考察对前端架构模式理解的面试题。Vue.js 的核心设计思想是 MVVM 模式,但它也借鉴了 MVC 和 MVP 的一些理念。下面详细解释这三种模式的区别: 1. MVC 模式 (Model-View-Controller) 核...
程序百科的头像-程序百科程序百科3个月前
575

面试题:什么是 React 受控组件和非受控组件?它们有什么区别?

在 React 中,组件可以分为受控组件 (Controlled Components) 和非受控组件 (Uncontrolled Components)。这种分类主要针对处理表单元素(如 <input>, <textarea>, <select>)...
程序百科的头像-程序百科程序百科3个月前
5713

面试题:常见的 CSS 布局单位有哪些?

面试题:常见的 CSS 布局单位有哪些? CSS 提供了丰富的长度和布局单位,用于控制元素的尺寸、间距、字体等。根据使用场景,这些单位可分为 绝对单位 和 相对单位 两大类。掌握它们的特性有助于...
程序百科的头像-程序百科程序百科4个月前
578

面试题:️ES6 新增的 Symbol 基础数据类型有什么作用?

ES6 引入的 Symbol 是 JavaScript 的第七种原始数据类型(primitive data type),其他六种是:string、number、boolean、null、undefined 和 object(object 是引用类型,但 typeof null 也返...
程序百科的头像-程序百科程序百科4个月前
576

面试题:️ES6 有哪些新特性?

ES6(ECMAScript 2015)是 JavaScript 语言历史上一次重大的更新,引入了大量现代化的语法和特性,极大地提升了语言的表达能力、开发效率和代码可维护性。以下是 ES6 的主要新特性,按类别进行...
程序百科的头像-程序百科程序百科4个月前
565

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

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

面试题:JavaScript 中为什么会有 BigInt 的提案?

JavaScript 中引入 BigInt 的提案,主要是为了解决Number 类型在表示和操作大整数时的精度限制问题。 核心原因:Number 类型的精度限制 在 JavaScript 中,所有的数字(包括整数和浮点数)都使...
程序百科的头像-程序百科程序百科4个月前
557

面试题:什么是 Vue 的单向数据流和双向数据流?

这是一个关于 Vue 核心设计理念的经典问题。理解“单向数据流”和“双向数据流”有助于掌握 Vue 的数据绑定机制和组件通信原则。 一、单向数据流(Unidirectional Data Flow) ✅ 定义: 单向数...
程序百科的头像-程序百科程序百科3个月前
5512

面试题:React.createClass 和 extends Component 有哪些区别?

React.createClass 与 extends Component 的区别 这是 React 发展过程中的一个重要变化,主要体现在 React 15.5 版本之前和之后的写法差异。 1. 语法定义区别 React.createClass (旧版) // Reac...
程序百科的头像-程序百科程序百科3个月前
5515