排序
面试题:React 中如何获取组件对应的 DOM 元素?
在 React 中,直接操作 DOM 通常不被推荐(应优先考虑状态驱动 UI),但在某些特定场景下(如管理焦点、触发动画、集成第三方库)需要访问真实的 DOM 元素。React 提供了 ref 来实现这一需求。 ...
面试题:JavaScript 其他值到字符串的转换规则是什么?
在 JavaScript 中,将其他类型的值转换为字符串(String)是一个常见的操作,它发生在字符串拼接、模板字面量或显式调用 String() 时。转换规则相对直观,但也有一些需要注意的细节。 一、核心...
面试题:ES6 新增了哪些字符串处理函数?
ES6(ECMAScript 2015)及后续的 ES2016、ES2017、ES2018、ES2019、ES2020、ES2021 等版本为 JavaScript 的字符串对象引入了许多实用的新方法,极大地简化了字符串的处理。以下是面试中常被问到...
面试题:说说你对 Flex 布局的理解及其使用场景
一、对 Flex 布局的理解 Flexbox(Flexible Box Layout),即 弹性盒子布局,是 CSS3 提供的一种一维布局模型,专门用于在容器和子元素之间高效地分配空间,即使子元素尺寸未知或动态变化,也能...
面试题:在 React Router 中如何获取历史对象?
在 React Router 中,“历史对象”(history object)用于导航和管理浏览器的历史记录栈。获取历史对象的方式随着 React Router 版本的演进而变化,尤其在 v5 和 v6 之间有重大差异。 以下是不...
面试题:Canvas 和 SVG 有什么区别?
<canvas> 和 <svg> 都是 HTML5 中用于在网页上绘制图形、创建动态视觉效果的技术,但它们在底层原理、使用方式、性能特点和适用场景上有着根本性的区别。 以下是 Canvas 和 SVG 的...
面试题:如果在伪元素中不写 content 会发生什么?
这是一个考察对 CSS 伪元素 (::before 和 ::after) 基础规则理解的面试题。 核心答案 如果在 ::before 或 ::after 伪元素中不写 content 属性,或者将 content 设置为 none,那么该伪元素将: ...
面试题:有哪些默认 display: block 元素和 display: inline 元素?你还知道哪些 display 取值?
这是一个考察 HTML 元素默认行为和 CSS display 属性知识的面试题。回答时需要清晰分类,并展示对现代布局的理解。 一、默认 display: block 的元素 这类元素在页面中独占一行,会从新行开始,...
面试题:::before 和 :after 的双冒号和单冒号有什么区别?
在CSS中,::before 和 ::after 伪元素的双冒号(::)和单冒号(:)在功能上没有区别,它们的作用完全相同。 两者之间的区别主要在于语法规范的演进和浏览器兼容性: CSS3 规范的区分: 在 CSS3 ...
面试题:HTML 中,i 与 em 标签的区别是什么?
<i> 和 <em> 标签在默认的视觉呈现上非常相似,通常都会将文本显示为斜体(italic)。然而,它们在 语义(Semantics)和用途 上有着根本的区别。理解这一点对于编写语义化、可访问...
