面试题:BigDecimal 为什么能保证精度不丢失?
BigDecimal 是 Java 中用于高精度数值计算的类,特别适用于金融、科学计算等对精度要求非常高的场景。它之所以能保证精度不丢失,主要依赖于其底层的设计原理和实现机制。 ✅ 一、为什么浮点数...
面试题:什么是 Vue 的生命周期?生命周期的作用是什么?
什么是 Vue 的生命周期? Vue 的生命周期指的是一个 Vue 组件从创建、挂载、更新到最终销毁的整个过程。在这个过程中,Vue 框架会在特定的时间点自动调用一些预先定义好的函数,这些函数被称为...
面试题:如何判断网页元素是否到达可视区域?
这是一个非常实用的前端面试题,常用于实现懒加载、无限滚动、埋点曝光等场景。判断元素是否进入可视区域有多种方法,从简单到高级逐步演进。 ✅ 方法一:使用 getBoundingClientRect()(兼容性...
面试题:怎么在组件初始化时立即调用 Vue 的 watch 函数?
这是一个常见的面试题,考察对 Vue 响应式系统和 watch 选项的深入理解。 核心答案: 在 Vue 中,watch 默认不会在组件初始化时立即执行。如果希望在监听的数据初始化时就立即执行一次回调函数...
面试题:Vue Router 支持哪几种路由模式?它们有什么区别?
Vue Router 支持两种主要的路由模式,用于在单页面应用(SPA)中实现无刷新的页面切换: Hash 模式 (默认模式) History 模式 1. Hash 模式 实现方式:使用 URL 的 hash(#)部分来模拟一个完整...
面试题:常见的 DOM 操作有哪些?
DOM (Document Object Model) 操作是前端开发的核心技能之一。常见的 DOM 操作可以分为以下几大类: 1. 查找/获取元素 (Selecting/Getting Elements) 这是所有操作的前提。 document.getElement...
面试题:MySQL 中 InnoDB 存储引擎与 MyISAM 存储引擎的区别是什么?
MySQL中的InnoDB和MyISAM是两种常用的存储引擎,它们各自具有不同的特点和适用场景。以下是这两种存储引擎的主要区别: 事务支持 InnoDB:支持事务处理(ACID兼容),提供提交、回滚和崩溃恢复...
面试题:CSS 中可继承与不可继承属性有哪些?
在 CSS 中,属性的继承(Inheritance) 是指子元素自动从父元素“继承”某些样式属性的机制。理解哪些属性可继承、哪些不可继承,对于高效编写 CSS 和避免样式混乱至关重要。 一、什么是继承? ...
面试题:在 Vue 组件中如何访问根实例?
在 Vue 应用中,根实例(Root Instance)通常指的是通过 new Vue()(Vue 2)或 createApp()(Vue 3)创建的最顶层的 Vue 应用实例。 在组件中访问根实例是一种不推荐的实践,因为它破坏了组件的...
面试题:MySQL 的覆盖索引是什么?
MySQL 的覆盖索引是什么? 覆盖索引(Covering Index) 是 MySQL 中一种优化技术,指查询所需的所有字段都包含在某个索引中,使得 MySQL 可以直接通过索引获取数据,而无需回表查询实际的...








