前端共256篇

面试题:如何计算 CSS 的优先级?

CSS 优先级(Specificity)是浏览器用来决定当多个规则作用于同一个元素时,哪个样式生效的机制。理解优先级对于解决样式冲突至关重要。 一、优先级计算规则 CSS 优先级由四部分组成,通常表示...
程序百科的头像-程序百科程序百科4个月前
367

面试题:为什么 Vue 写组件时可以放在 .vue 文件里?可以使用其他文件后缀吗?

这是一个考察对 Vue 项目构建机制理解的面试题。核心在于 Vue 的构建工具如何解析和处理 .vue 文件。 一、为什么可以将组件写在 .vue 文件里? 因为 .vue 文件是一种 单文件组件(Single File C...
程序百科的头像-程序百科程序百科3个月前
307

面试题:如果 React 的 Consumer 组件在上下文树中找不到 Provider,如何处理?

这是一个很好的问题,涉及到 React Context API 的健壮性设计。 当一个 Consumer 组件在组件树中找不到对应的 Provider 时,React 会使用在 createContext 时定义的 defaultValue(默认值)。 1...
程序百科的头像-程序百科程序百科2个月前
357

面试题:怎么实现元素的水平垂直居中?

元素的水平垂直居中是前端开发中最常见的布局需求之一。根据元素类型(块级、行内、未知尺寸、绝对定位等)和使用的技术,有多种实现方式。以下是 全面、清晰、结构化 的回答,适合在面试中展示...
程序百科的头像-程序百科程序百科4个月前
726

面试题:line-height: 100% 和 line-height: 1 有什么区别?

这是一个考察对 CSS line-height 属性计算方式深刻理解的经典面试题。虽然 100% 和 1 看似等价,但在 line-height 的上下文中,它们的行为有本质区别。 核心区别 值计算方式是否继承实际效果lin...
程序百科的头像-程序百科程序百科4个月前
366

面试题:ES6 中,如何提取深度嵌套的对象中的指定属性?

在 ES6 及后续版本中,提取深度嵌套对象中的属性,最常用和推荐的方法是使用 解构赋值 (Destructuring Assignment),并结合 可选链操作符 (Optional Chaining, ES2020) 来安全地处理可能为 null...
程序百科的头像-程序百科程序百科4个月前
496

面试题:怎么实现网页三栏布局?

三栏布局是前端开发中常见的经典布局模式,通常指左右两栏固定宽度,中间一栏自适应(圣杯布局或双飞翼布局)。以下是多种实现方式,从传统到现代,全面覆盖。 一、什么是三栏布局? 左侧栏:固...
程序百科的头像-程序百科程序百科4个月前
396

面试题:JavaScript 中 for…in 和 for…of 的区别是什么?

这是一个非常经典的 JavaScript 面试题,考察对循环机制和数据结构的理解。for...in 和 for...of 看似相似,但用途和行为有本质区别。 ✅ 核心区别总结 特性for...infor...of设计目的遍历对象的...
程序百科的头像-程序百科程序百科4个月前
396

面试题:::before 和 :after 的双冒号和单冒号有什么区别?

在CSS中,::before 和 ::after 伪元素的双冒号(::)和单冒号(:)在功能上没有区别,它们的作用完全相同。 两者之间的区别主要在于语法规范的演进和浏览器兼容性: CSS3 规范的区分: 在 CSS3 ...
程序百科的头像-程序百科程序百科4个月前
426

面试题:ES6 的 Proxy 可以实现什么功能?

ES6 引入的 Proxy 是一个非常强大的元编程(Metaprogramming)特性。它允许你创建一个代理对象,用于拦截并自定义对另一个对象(目标对象)的基本操作(如属性读取、赋值、枚举、函数调用等)。...
程序百科的头像-程序百科程序百科4个月前
526