前端共256篇

面试题:说说你对 CSS 工程化的理解

CSS 工程化是指将 软件工程的思想和方法 应用于 CSS 开发中,以解决传统 CSS 开发中存在的维护困难、命名冲突、复用性差、性能问题和团队协作障碍等痛点。 其核心目标是提升 CSS 代码的 可维护...
程序百科的头像-程序百科程序百科4个月前
3015

面试题:JavaScript 其他值到字符串的转换规则是什么?

在 JavaScript 中,将其他类型的值转换为字符串(String)是一个常见的操作,它发生在字符串拼接、模板字面量或显式调用 String() 时。转换规则相对直观,但也有一些需要注意的细节。 一、核心...
程序百科的头像-程序百科程序百科4个月前
4215

面试题:有哪些定义 Vue 组件模板的方法?

在 Vue 中,定义组件模板(template)有多种方式,适用于不同的开发场景和项目需求。以下是主要的几种方法,涵盖 Vue 2 和 Vue 3 的实践。 一、1. 单文件组件(SFC)中的 <template> 标签...
程序百科的头像-程序百科程序百科3个月前
2915

面试题:说说你对 sticky 定位的理解

position: sticky 是 CSS 中一种非常实用的定位方式,结合了 relative 和 fixed 定位的特点。 它允许元素在滚动到特定阈值之前表现得像相对定位(relative),一旦达到该阈值,则表现得像固定定...
程序百科的头像-程序百科程序百科4个月前
2415

面试题:什么是 DOM 和 BOM?

DOM 和 BOM 是 JavaScript 操作浏览器环境的两个核心概念,它们共同构成了 Web 前端开发的基础。 1. DOM (Document Object Model - 文档对象模型) 定义:DOM 是 HTML 或 XML 文档的编程接口。它...
程序百科的头像-程序百科程序百科4个月前
5315

面试题:常用的 HTML meta 标签有哪些?

<meta> 标签位于 HTML 文档的 <head> 部分,用于提供关于网页的元数据(Metadata),这些数据不会直接显示在页面上,但对浏览器、搜索引擎和社交平台至关重要。以下是常用的 HTML &...
程序百科的头像-程序百科程序百科4个月前
3815

面试题:Object.assign 和对象扩展运算符有什么区别?是深拷贝还是浅拷贝?

Object.assign 和对象扩展运算符(...)在功能上非常相似,都用于浅拷贝对象属性。它们的主要区别在于语法、使用场景和一些细微的行为差异。 1. 功能与相似性 两者都用于将一个或多个源对象的可...
程序百科的头像-程序百科程序百科4个月前
6815

面试题:如果在伪元素中不写 content 会发生什么?

这是一个考察对 CSS 伪元素 (::before 和 ::after) 基础规则理解的面试题。 核心答案 如果在 ::before 或 ::after 伪元素中不写 content 属性,或者将 content 设置为 none,那么该伪元素将: ...
程序百科的头像-程序百科程序百科4个月前
4215

面试题:isNaN 和 Number.isNaN 函数有什么区别?

isNaN() 和 Number.isNaN() 都是 JavaScript 中用于检查一个值是否为 NaN(Not-a-Number)的函数,但它们的行为有本质区别,尤其是在处理非数字类型的输入时。 一、isNaN()(全局函数) 行为: ...
程序百科的头像-程序百科程序百科4个月前
4015

面试题:为什么在 React 中使用 className 而不是 class?

在 React 中使用 className 而不是 class 来指定 HTML 元素的 CSS 类,主要原因如下: 1. JavaScript 语言保留字冲突 这是最核心的原因。 class 是 JavaScript (ES6) 中的一个保留关键字,用于...
程序百科的头像-程序百科程序百科3个月前
3815