七牛云前端面试题及参考答案 (上)
目录
基本数据类型有哪些?typeof null 的结果是什么?
null 和 undefined 的区别是什么?
let 关键字的特点有哪些?
this 指向的规则是什么?箭头函数中 this 指向哪里?
如何实现 JavaScript 的深拷贝和浅拷贝?
数组去重的常见方法(手写代码)
数组扁平化(手写,不能使用 flat (Infinity))
forEach 和 map 方法的区别是什么?
闭包的应用场景:实现链式加法 add (1)(2)(3)(手写)
var、let、const 的作用域区别及执行结果分析
promise 的执行顺序(结合箭头函数分析运行结果)
setTimeout 异步执行与同步执行的原理
apply/call/bind 的区别及手写实现(用其中一个实现另一个)
JavaScript 事件循环机制(微任务 / 宏任务)及代码题分析
事件捕获与事件冒泡的流程,如何手动控制?
proxy 的原理及优点,ES5 中实现代理的方式
DOM1/DOM2/DOM3 事件模型的区别
类组件与函数组件的区别(详细说明)
React 类组件中 state 的特点及更新机制
React 函数组件的特性(Hook 相关)
React Hooks 的底层实现原理
useEffect 的执行原理及依赖项处理
当 useEffect 依赖项包含引用类型时,如何避免死循环?
对 React Hook 的理解与实际应用场景
React 重新渲染的逻辑机制
React useState 调用后重新渲染的结果判断(代码题)
useState 的基本渲染逻辑
代码示例与结果分析
特殊场景:状态未更新的情况
总结渲染结果的判断逻辑
对 React Fiber 架构的了解程度
Fiber 架构的背景与核心目标
Fiber 的核心概念与数据结构
Fiber 架构的渲染流程
Fiber 架构的优势
实际应用中的体现
与传统架构的对比
React 新特性 useDeferredValue 的作用
useDeferredValue 的设计背景
基本用法与核心逻辑
与防抖/节流的区别
配置选项与优先级控制
与其他 Hook 的配合使用
应用场景总结
注意事项
组件通信的方式有哪些?
组件通信的核心场景与分类
一、父子组件通信(Parent to Child & Child to Parent)
二、兄弟组件通信(Sibling to Sibling)
三、跨层级组件通信(跨多层级)
四、其他通信方式
通信方式选择建议
基本数据类型有哪些?typeof null 的结果是什么?
在 JavaScript 中,基本数据类型是语言中最基础的数据表示形式,它们是不可变的(immutable),并且直接存储在栈内存中。ES6 及以后的版本定义了以下七种基本数据类型:undefined、null、boolean、number、string、symbol(ES6 新增)和 bigint(ES2020 新