面试题:在 React Router 中如何获取历史对象?
在 React Router 中,“历史对象”(history object)用于导航和管理浏览器的历史记录栈。获取历史对象的方式随着 React Router 版本的演进而变化,尤其在 v5 和 v6 之间有重大差异。 以下是不...
面试题:CSS 中 display、float、position 的关系是什么?
这是一个深入理解 CSS 布局机制的高级面试题。display、float 和 position 都能影响元素的盒模型生成和布局,它们之间存在复杂的优先级和相互覆盖关系。 核心原则 CSS 规范定义了当一个元素同时...
面试题:ES6 中,如何提取深度嵌套的对象中的指定属性?
在 ES6 及后续版本中,提取深度嵌套对象中的属性,最常用和推荐的方法是使用 解构赋值 (Destructuring Assignment),并结合 可选链操作符 (Optional Chaining, ES2020) 来安全地处理可能为 null...
面试题:Java 中什么情况会导致死锁?如何避免?
在Java中,死锁是指两个或多个线程处于互相等待的状态,每个线程都在等待其他线程释放资源,从而导致所有涉及的线程都无法继续执行。这种情况通常发生在多线程环境下,当线程需要同时获取多个锁...
面试题:CSS 的 position 有哪些属性值,区别是什么?
position 是 CSS 中控制元素定位的核心属性,它决定了元素如何在页面中放置。共有 5 个标准属性值,每个都有独特的定位行为。 1. static (默认值) 行为: 元素按照正常的文档流(Normal Documen...
面试题:你使用过 Java 中的哪些阻塞队列?
在 Java 中,阻塞队列(BlockingQueue) 是 java.util.concurrent 包下的一个接口,它是线程安全、支持阻塞操作的队列,常用于生产者-消费者模型等并发场景。 我在项目中使用过以下几种常见的 ...
面试题:Java 的 CMS 垃圾回收流程是怎样的?
CMS(Concurrent Mark-Sweep)垃圾收集器是为了解决老年代垃圾回收问题而设计的一种低延迟的垃圾收集器。它的主要目标是在执行垃圾收集时尽量减少“Stop the World”事件的发生,从而降低应用的...
面试题:说说你对 BFC 的理解,如何创建 BFC?
你对 BFC 的理解,以及如何创建 BFC? BFC(Block Formatting Context),即 块级格式化上下文,是 CSS 渲染中一个重要的概念。它是页面中的一块独立的渲染区域,规定了内部块级元素如何布局,...
面试题:相比于 Oracle,MySQL 的优势有哪些?
在数据库领域,MySQL 与 Oracle 各有优劣,但 MySQL 在 成本、易用性、灵活性和轻量级场景 中具有显著优势。以下是 MySQL 相比 Oracle 的核心优势总结: 1. 成本效益:开源免费,降低企业成本 ...
面试题:为什么不推荐在 MySQL 中直接存储图片、音频、视频等大容量内容?
在MySQL中直接存储图片、音频、视频等大容量内容(通常称为BLOB/BIG BLOB数据)通常不被推荐,主要原因包括以下几点: 1. 性能问题 存储效率:存储大容量文件(如图片、音频、视频)会大幅增加...









