前端共256篇

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

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

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

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

面试题:JavaScript 中 Map 和 Object 的区别是什么?

Map 和 Object 都可以用来存储键值对,但它们在设计、特性和使用场景上有显著区别。理解这些差异对于选择合适的数据结构至关重要。 核心区别对比 特性MapObject键的类型任意类型(对象、函数、...
程序百科的头像-程序百科程序百科6个月前
3314

面试题:说说你对 Flex 布局的理解及其使用场景

一、对 Flex 布局的理解 Flexbox(Flexible Box Layout),即 弹性盒子布局,是 CSS3 提供的一种一维布局模型,专门用于在容器和子元素之间高效地分配空间,即使子元素尺寸未知或动态变化,也能...
程序百科的头像-程序百科程序百科6个月前
4814

面试题:flex-shrink 和 flex-grow 的默认值是多少?作用是什么?

这是一个深入考察 CSS Flexbox 布局核心机制的面试题。理解 flex-grow 和 flex-shrink 的默认值及其作用,是掌握弹性布局的关键。 默认值 flex-grow 的默认值是 0。 flex-shrink 的默认值是 1。...
程序百科的头像-程序百科程序百科6个月前
3914

面试题:Sass、Less 是什么?为什么要使用它们?

Sass 和 Less 都是 CSS 预处理器(CSS Preprocessors),它们扩展了 CSS 的功能,通过引入编程特性(如变量、嵌套、混合、函数等),让 CSS 更强大、更易维护、更适合团队协作和大型项目开发。 ...
程序百科的头像-程序百科程序百科6个月前
6614

面试题:Canvas 和 SVG 有什么区别?

<canvas> 和 <svg> 都是 HTML5 中用于在网页上绘制图形、创建动态视觉效果的技术,但它们在底层原理、使用方式、性能特点和适用场景上有着根本性的区别。 以下是 Canvas 和 SVG 的...
程序百科的头像-程序百科程序百科6个月前
4314

面试题:为什么 li 与 li 元素之间有看不见的空白间隔?如何解决?

这是一个非常经典且在实际开发中频繁遇到的 HTML/CSS 问题。这个问题的本质是HTML 中的空白字符(whitespace)在特定布局模式下被渲染成了可视的空白。 一、问题原因 <li> 元素之间出现看...
程序百科的头像-程序百科程序百科6个月前
4414

面试题:ES6 箭头函数和普通函数有什么区别?

ES6 箭头函数(Arrow Functions)与传统的普通函数(使用 function 关键字定义)在语法、行为和使用场景上存在显著差异。以下是它们之间的主要区别: 1. 语法差异 (Syntax) 普通函数:使用 func...
程序百科的头像-程序百科程序百科6个月前
3114

面试题:JavaScript 中 + 操作符什么时候用于字符串的拼接?

在 JavaScript 中,+ 操作符的行为是动态的,它既可以用于数值相加,也可以用于字符串拼接。其具体行为取决于操作数的数据类型。 核心规则 当 + 操作符的任意一个操作数是字符串(或可以被转换...
程序百科的头像-程序百科程序百科6个月前
4714