面试题:JavaScript 的 splice 和 slice 函数会改变原数组吗?
这是一个非常典型的 JavaScript 面试题,考察对数组方法副作用的理解。 ✅ 直接答案: splice():会改变原数组 ✅ slice():不会改变原数组 ❌ 🔍 详细解释 1. splice() —— 会修改原数组 spli...
面试题:什么是 Java 中的不可变类?
在Java中,不可变类(Immutable Class)是指一旦一个对象被创建并且初始化后,其状态就不能再被改变的类。这意味着该对象的属性在对象创建之后不能被修改,任何对它的“修改”操作都会返回一个...
面试题:当 Vue 的属性名称与 methods 中的方法名称一样时,会发生什么问题?
当 Vue 组件中的 data 属性名称 与 methods 方法名称 相同时,会引发一个命名冲突,导致数据属性被方法覆盖,从而产生严重问题。 会发生什么? 数据属性被覆盖: Vue 在初始化组件实例时,会将 ...
面试题:React 的触摸事件有哪些?
在 React 中,为了支持移动设备上的触摸交互,提供了一系列触摸事件(Touch Events)。这些事件与原生 DOM 的触摸事件一一对应,但遵循 React 的合成事件系统(SyntheticEvent),并采用驼峰命...
面试题:如何使用 React 开发任务记录网站?实现思路是什么?
开发一个任务记录网站(To-Do List)是 React 的经典入门项目,它涵盖了组件化、状态管理、用户交互等核心概念。以下是详细的实现思路和步骤: 一、功能需求分析 一个基础的任务记录网站通常包...
面试题:你遇到过 ConcurrentModificationException 错误吗?它是如何产生的?
ConcurrentModificationException 是 Java 中常见的运行时异常之一,通常在不当修改集合(如 List、Set 或 Map)时抛出。这种错误特别容易在多线程环境下出现,但单线程程序也可能触发它。 如何...
面试题:什么是 Hash 碰撞?怎么解决哈希碰撞?
什么是哈希碰撞? 哈希碰撞是指不同的输入通过哈希函数计算后得到了相同的哈希值的情况。在哈希表(如 Java 中的 HashMap)中,键(Key)首先会被转换成一个哈希码(hashCode),然后这个...
面试题:什么是 Java 的 AOT(Ahead-Of-Time)?
Java的AOT(Ahead-Of-Time)编译是指在程序运行之前将Java字节码转换成本地机器代码的过程,与之相对的是JIT(Just-In-Time)编译,它是在程序运行时动态地进行编译。 AOT编译的主要目标是提高...
面试题:分布式锁在未完成逻辑前过期怎么办?
在分布式锁的应用场景中,如果持有锁的客户端在完成其业务逻辑之前锁就已经过期了,这会导致其他竞争的客户端可能获取到同一把锁,从而引发并发问题。 这种情况通常被称为“锁丢失”问题。为了...
面试题:ES6 新增了哪些字符串处理函数?
ES6(ECMAScript 2015)及后续的 ES2016、ES2017、ES2018、ES2019、ES2020、ES2021 等版本为 JavaScript 的字符串对象引入了许多实用的新方法,极大地简化了字符串的处理。以下是面试中常被问到...











