面试题:HTML 中,b 与 strong 标签的区别是什么?
<b> 和 <strong> 标签在默认的视觉呈现上非常相似,通常都会将文本显示为粗体(bold)。然而,与 <i> 和 <em> 的区别类似,它们在 语义(Semantics)和用途 上有着根本...
面试题:当 Java 的 synchronized 升级到重量级锁后,所有线程都释放锁了,此时它还是重量级锁吗?
当一个 Java 对象的锁通过 synchronized 升级到重量级锁之后,即使所有线程都释放了这个锁,该对象的锁仍然保持为重量级锁的状态。 这是因为锁膨胀(Lock Escalation)在 JVM 中是单向的,一旦...
面试题:Vue 的 template 标签有什么用?
在 Vue.js 中,<template> 标签是一个非常关键且用途广泛的语法元素。它本身不会被渲染为真实的 DOM 元素,而是一个包裹/分组内容的容器,用于组织和控制内部内容的渲染逻辑。 核心作用 &...
面试题:CSS 优化和提高性能的方法有哪些?
这是一个非常经典的前端性能优化问题。CSS 虽然看似简单,但不当的写法会严重影响页面渲染性能。以下是一些关键的 CSS 优化和性能提升方法,按类别进行组织: 一、选择器优化 避免使用通配符和...
面试题:️ES6 箭头函数的 this 指向哪⾥?
ES6 箭头函数(Arrow Functions)最核心的特性之一就是它不绑定自己的 this。箭头函数中的 this 指向是在函数被创建时就确定的,它继承自外层(包裹它的)普通函数或全局作用域的 this 值。这种...
面试题:说说 Java 中 HashMap 的原理?
Java 中的 HashMap 是一种基于哈希表实现的键值对(key-value)映射结构,它允许我们快速地根据键来存储和检索值。下面详细介绍 HashMap 的工作原理: 1. 基本概念 哈希表:HashMap 内部使用数...
面试题:Java 中的 synchronized 轻量级锁是否会进行自旋?
在 Java 中,synchronized 的实现涉及到几种不同的锁状态,包括无锁状态、偏向锁、轻量级锁和重量级锁。这些状态之间的转换是根据运行时的并发情况动态调整的。 对于轻量级锁来说,它并不直接涉...
面试题:Vue 在 created 和 mounted 这两个生命周期钩子中请求数据有什么区别?
在 Vue 中,created 和 mounted 都是常用的生命周期钩子,都可以用来发起数据请求,但它们在执行时机和适用场景上存在关键区别。 1. 执行时机 created 钩子: 在实例创建完成后立即调用。 此时...
面试题:Vue Router 的 hash 模式和 history 模式有什么区别?
Vue Router 的 hash 模式 和 history 模式 是两种实现单页面应用(SPA)路由的机制,它们在 URL 结构、工作原理、服务器配置要求 和 用户体验 上有显著区别。 以下是它们的核心区别: 1. URL 结...
面试题:MySQL 的 Change Buffer 是什么?它有什么作用?
MySQL 的 Change Buffer 是什么?它有什么作用? 1. 定义与核心作用 Change Buffer 是 MySQL InnoDB 存储引擎 中的一个关键优化机制,主要用于缓存对 非唯一二级索引(如普...










