面试题:如何判断网页元素是否到达可视区域?
这是一个非常实用的前端面试题,常用于实现懒加载、无限滚动、埋点曝光等场景。判断元素是否进入可视区域有多种方法,从简单到高级逐步演进。 ✅ 方法一:使用 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...
面试题:Java 泛型的作用是什么?
Java中的泛型(Generics)提供了一种让类型(类、接口)成为参数的机制,允许编写可以处理不同类型数据的代码而无需在具体使用时进行类型转换。以下是泛型的主要作用: 1. 提高类型安全性 泛型...
面试题:️ES6 箭头函数能当构造函数吗?
不能,ES6 箭头函数不能用作构造函数。 如果你尝试使用 new 操作符来调用一个箭头函数,JavaScript 引擎会抛出一个 TypeError 错误。 1. 直接结果 const MyArrow = () => { console.log('I am a...
面试题:如果 React 的 Consumer 组件在上下文树中找不到 Provider,如何处理?
这是一个很好的问题,涉及到 React Context API 的健壮性设计。 当一个 Consumer 组件在组件树中找不到对应的 Provider 时,React 会使用在 createContext 时定义的 defaultValue(默认值)。 1...
面试题:MySQL 中长事务可能会导致哪些问题?
在 MySQL 中,长事务(长时间运行的事务)可能会对数据库性能、稳定性和一致性造成多方面的影响。以下是长事务可能导致的主要问题及解决方案: 1. 锁等待和死锁 问题: 锁资源占用:长事务会长...
面试题:JavaScript 的 forEach 和 map 方法有什么区别?
forEach 和 map 都是 JavaScript 中用于遍历数组的方法,但它们在目的、返回值和使用场景上有本质的区别。 核心区别总结 特性forEachmap目的执行副作用(如修改外部变量、操作 DOM、打印日志)...
面试题:对数据库进行分库分表可能会引发哪些问题?
分库分表是应对高并发、大数据量场景的常见优化手段,但也会引入一系列复杂问题。以下是主要问题及其分析: 1. 数据一致性问题 跨分片事务难题分库分表后,一个业务操作可能涉及多个分片(如扣...









