面试题:什么是数据库的逻辑外键?数据库的物理外键和逻辑外键各有什么优缺点?
在数据库设计中,外键(Foreign Key)用于定义和加强两个表之间的关系。根据其实现方式的不同,可以将外键分为物理外键和逻辑外键。 物理外键 定义:物理外键指的是通过数据库管理系统(DBMS)明...
面试题:Redis 的 ListPack 数据结构是什么?
Redis 的 ListPack 是 Redis 7.0 引入的一种新型紧凑数据结构,用于替代早期版本中使用的 Ziplist(压缩列表)。其设计目标是优化内存利用率、减少连锁更新问题,并提升数据操作的性能。 Lis...
面试题:JavaScript 的 splice 和 slice 函数会改变原数组吗?
这是一个非常典型的 JavaScript 面试题,考察对数组方法副作用的理解。 ✅ 直接答案: splice():会改变原数组 ✅ slice():不会改变原数组 ❌ 🔍 详细解释 1. splice() —— 会修改原数组 spli...
面试题:️如果 new 一个箭头函数会怎么样?
使用 new 操作符来调用一个箭头函数会抛出一个 TypeError 错误。 箭头函数不能用作构造函数。 1. 直接示例 const ArrowFunc = () => { console.log('I am an arrow function'); }; // 尝试用 ne...
面试题:Java 中有哪些垃圾回收算法?
Java中的垃圾回收(GC)机制是自动管理内存的一个重要特性,它通过不同的算法来识别和回收不再使用的对象所占用的内存。以下是几种常见的垃圾回收算法: 标记-清除算法(Mark-Sweep): 这是最...
面试题:怎么使 CSS 样式只在当前 Vue 组件中生效?
在 Vue 中,为了实现 CSS 样式的组件作用域(Scoped Styling),防止样式污染全局或其他组件,有以下几种常用方法: 1. 使用 scoped 属性(最常用) 在 <style> 标签上添加 scoped 属性,...
面试题:Vue 中是如何使用 event 对象的?
在 Vue 中使用 event 对象(即原生 DOM 事件对象)有多种方式,可以根据不同的场景灵活处理。以下是详细的使用方法和注意事项: 一、在事件处理函数中自动接收 event 对象 当使用 v-on 绑定事件...
面试题:什么是 Java 中的直接内存(堆外内存)?
在Java中,直接内存(也称为堆外内存)是指不位于JVM堆空间中的内存区域。它独立于Java堆之外,通常通过java.nio.ByteBuffer的allocateDirect方法或其他NIO工具类进行分配。直接内存允许数据存...
面试题:Sass、Less 是什么?为什么要使用它们?
Sass 和 Less 都是 CSS 预处理器(CSS Preprocessors),它们扩展了 CSS 的功能,通过引入编程特性(如变量、嵌套、混合、函数等),让 CSS 更强大、更易维护、更适合团队协作和大型项目开发。 ...
面试题:数组和链表在 Java 中的区别是什么?
数组和链表是两种基础的数据结构,在 Java 中它们有着不同的特性和使用场景。以下是数组和链表的主要区别: 1. 数据存储方式 数组:在内存中是连续存储的,这意味着每个元素都紧挨着前一个元素...











