排序
面试题:escape、encodeURI、encodeURIComponent 的区别是什么?
escape、encodeURI 和 encodeURIComponent 都是 JavaScript 中用于对字符串进行编码的函数,主要用于处理 URL 或查询参数中的特殊字符。但它们的作用范围、编码规则和现代推荐程度有显著区别。 ...
面试题:React 中如何为非受控组件设置默认值?
在 React 中,为非受控组件(Uncontrolled Component)设置默认值,需要使用特定的属性,而不是受控组件中使用的 value 属性。 核心方法:使用 defaultValue 和 defaultChecked 由于非受控组件...
面试题:HTML5 相比于 HTML 有哪些更新?
HTML5 是对传统 HTML(主要指 HTML 4.01 和 XHTML 1.0)的一次重大革新,它不仅仅是一些新标签的增加,更是一个旨在构建更强大、更语义化、更富交互性的 Web 应用的完整框架。以下是 HTML5 相比...
面试题:flex-shrink 和 flex-grow 的默认值是多少?作用是什么?
这是一个深入考察 CSS Flexbox 布局核心机制的面试题。理解 flex-grow 和 flex-shrink 的默认值及其作用,是掌握弹性布局的关键。 默认值 flex-grow 的默认值是 0。 flex-shrink 的默认值是 1。...
面试题:怎么实现网页三栏布局?
三栏布局是前端开发中常见的经典布局模式,通常指左右两栏固定宽度,中间一栏自适应(圣杯布局或双飞翼布局)。以下是多种实现方式,从传统到现代,全面覆盖。 一、什么是三栏布局? 左侧栏:固...
面试题:Vue 项目中如何监听键盘事件?
在 Vue 项目中,监听键盘事件(如 keydown、keyup)有多种方式,既可以使用原生的 DOM 事件,也可以利用 Vue 提供的按键修饰符来简化开发。以下是详细的实现方法: 一、使用 v-on 或 @ 绑定键盘...
面试题:React 中,父子组件如何进行通信?
在 React 中,组件通信是构建复杂应用的核心。父子组件通信是最基础、最常见的方式,其核心原则是 “数据单向流动” —— 数据从父组件流向子组件。 1. 父组件向子组件传递数据:通过 props 这...
面试题:如何用 CSS 实现一个扇形?
这是一个非常有挑战性的 CSS 面试题,考察对 CSS 形状、变换和布局的深入理解。实现一个扇形通常需要结合 border-radius、clip-path 或 transform 等技术。 核心思路 扇形是圆的一部分,由一个...
面试题:JavaScript 中判断数据类型的方式有哪些?
在 JavaScript 中,由于其动态类型和弱类型的特性,准确判断数据类型是开发中的常见需求。以下是几种主要的判断方式,各有优缺点和适用场景。 1. typeof 操作符 最常用的基础类型判断方法。 语...
面试题:为什么在 React 中使用 className 而不是 class?
在 React 中使用 className 而不是 class 来指定 HTML 元素的 CSS 类,主要原因如下: 1. JavaScript 语言保留字冲突 这是最核心的原因。 class 是 JavaScript (ES6) 中的一个保留关键字,用于...
