面试题:MySQL 中的回表是什么?
MySQL 中的回表是什么? 核心概念 回表 是 MySQL 中一种与索引查询相关的性能现象,通常发生在使用 二级索引(非聚簇索引) 进行查询时。 定义:当通过二级索引查询数据时,由于...
面试题:Redis 的持久化机制有哪些?
Redis 的持久化机制主要有以下三种方式: 1. RDB(Redis Database) 原理 RDB 是通过 快照(Snapshot) 的方式,将 Redis 内存中的数据在指定时间间隔内持久化到磁盘上,生成一个&nbs...
面试题:React 组件的 state 和 props 有什么区别?
在 React 中,state 和 props 是管理数据的两个核心概念,它们都用于控制组件的渲染,但在来源、可变性、作用范围和使用场景上有本质区别。 核心区别速查表 特性stateprops来源组件内部定义和管...
面试题: 为什么在 Java 中需要使用 ThreadLocal?
在Java中,ThreadLocal 提供了一种线程局部变量的机制,这意味着每个使用某 ThreadLocal 变量的线程都有自己独立初始化的副本。这种机制有几个关键的应用场景和优势,解释了为什么在某些情况下...
面试题:JVM 垃圾回收时产生的 concurrent mode failure 的原因是什么?
在使用CMS(Concurrent Mark-Sweep)垃圾收集器时,'Concurrent Mode Failure'(并发模式失败)是一个重要的概念。这种失败通常发生在CMS尝试以并发模式执行老年代的垃圾回收时,但由于某些原因...
面试题:JavaScript 数组的遍历方法有哪些?
JavaScript 提供了多种遍历数组的方法,每种方法都有其特定的用途和特点。以下是主要的数组遍历方法: 1. 传统循环 (Traditional Loops) 这些是最基础、性能通常最好的方法。 for 循环: 最灵活...
面试题:什么是 Vue 的生命周期?生命周期的作用是什么?
什么是 Vue 的生命周期? Vue 的生命周期指的是一个 Vue 组件从创建、挂载、更新到最终销毁的整个过程。在这个过程中,Vue 框架会在特定的时间点自动调用一些预先定义好的函数,这些函数被称为...
面试题:如何判断网页元素是否到达可视区域?
这是一个非常实用的前端面试题,常用于实现懒加载、无限滚动、埋点曝光等场景。判断元素是否进入可视区域有多种方法,从简单到高级逐步演进。 ✅ 方法一:使用 getBoundingClientRect()(兼容性...
面试题:什么情况下会触发 Java 的 Full GC?
在Java中,Full GC指的是对整个堆(包括年轻代、老年代和永久代/元空间)进行垃圾回收的过程。触发Full GC的情况有多种,以下是一些常见的触发条件: 1. 老年代空间不足 当老年代没有足够的空间...
面试题:React 中,父子组件如何进行通信?
在 React 中,组件通信是构建复杂应用的核心。父子组件通信是最基础、最常见的方式,其核心原则是 “数据单向流动” —— 数据从父组件流向子组件。 1. 父组件向子组件传递数据:通过 props 这...










