useMemo 依赖数组漏写或多写会有什么症状,如何保证依赖正确?
useMemo 依赖数组漏写或多写会有什么症状,如何保证依赖正确? 本文先给出可直接复述的结论,再用最小代码说明useMemo 依赖数组 漏写 exhaustive-deps的工作方式、判断依据、项目边界和常见误区。
性能优化专题面试题第 5 页,显示第 201–250 题,共找到 340 道完整解析,可继续按分类、标签与关键词缩小范围。
按稳定语义路径排序
useMemo 依赖数组漏写或多写会有什么症状,如何保证依赖正确? 本文先给出可直接复述的结论,再用最小代码说明useMemo 依赖数组 漏写 exhaustive-deps的工作方式、判断依据、项目边界和常见误区。
解释 useMemo 在开发编辑、初次挂载挂起等情况下可能丢弃缓存,用房间连接示例说明如何把资源创建与清理放在 Effect,并区分缓存、state、ref 和重新挂载后的生命周期。
什么情况下不该使用 useMemo? 本文先给出可直接复述的结论,再用最小代码说明useMemo 不必要的优化 廉价计算的工作方式、判断依据、项目边界和常见误区。
用按标签筛选条目的示例解释 useMemo 何时计算、如何按 Object.is 比较依赖,说明同引用突变、新数组重算、A 到 B 再到 A,以及纯计算与开发严格模式的边界。
只在挂载时算一次的昂贵初始值,应该用 useMemo 还是 useState 惰性初始化? 本文先给出可直接复述的结论,再用最小代码说明useMemo useState 惰性初始化 区别的工作方式、判断依据、项目边界和常见误区。
与 props 和 state 无关的常量,放 useMemo 里和提升出组件外有何区别? 本文先给出可直接复述的结论,再用最小代码说明useMemo 模块作用域 常量提升的工作方式、判断依据、项目边界和常见误区。
useTransition 返回的 isPending 适合设计什么样的加载反馈? 本文先给出可直接复述的结论,再用最小代码说明useTransition isPending 加载反馈的工作方式、判断依据、项目边界和常见误区。
React 应用 hydration 阶段的主要性能开销来自哪里,有哪些降低成本的思路? 本文先给出可直接复述的结论,再用最小代码说明React hydration 性能优化的工作方式、判断依据、项目边界和常见误区。
为什么把 React Server Action 传给 form 的 action 属性能做到 JavaScript 未加载时表单仍可提交? 本文先给出可直接复述的结论,再用最小代码说明React Server Action 表单 渐进增强的工作方式、判断依据、项目边界和常见误区。
以两个关联设置的点击更新解释批处理,说明中间状态、不同点击事件边界、严格模式日志与实际提交,并区分性能合并和业务事务。
Redis 的 ZUNIONSTORE 如何实现多个榜单的加权汇总,有什么性能注意点? 本文先给出可直接复述的结论,再用最小代码说明Redis ZUNIONSTORE 聚合 加权的工作方式、判断依据、项目边界和常见误区。
Redis AOF 的 appendfsync 三种策略在数据安全与性能上如何取舍? 本文先给出可直接复述的结论,再用最小代码说明Redis AOF appendfsync always everysec no的工作方式、判断依据、项目边界和常见误区。
如何发现 Redis 中的热点键,monitor、hotkeys 参数与代理层统计各有什么代价? 本文先给出可直接复述的结论,再用最小代码说明Redis 热点键 发现 hotkeys monitor的工作方式、判断依据、项目边界和常见误区。
Read Through、Write Through 与 Write Behind 三种缓存模式的职责划分和一致性差异是什么? 本文先给出可直接复述的结论,再用最小代码说明Read Through Write Through Write Behind 缓存模式 区别的工作方式、判断依据、项目边界和常见误区。
键集分页(keyset pagination)与 offset 分页在查询性能和一致性上有什么差别? 本文先给出可直接复述的结论,再用最小代码说明keyset 分页 seek 分页 offset 对比的工作方式、判断依据、项目边界和常见误区。
基于 offset/limit 的分页在数据量大或频繁写入时会出什么问题? 本文先给出可直接复述的结论,再用最小代码说明offset 分页 深分页 性能问题 数据漂移的工作方式、判断依据、项目边界和常见误区。
React Native FlatList 的 windowSize、maxToRenderPerBatch、initialNumToRender 如何影响长列表性能? 本文先给出可直接复述的结论,再用最小代码说明React Native FlatList windowSize 性能优化的工作方式、判断依据、项目边界和常见误区。
React Native 中横向 FlatList 嵌在纵向 ScrollView 里有哪些坑,为什么官方建议同方向列表嵌套要慎重? 本文先给出可直接复述的结论,再用最小代码说明React Native FlatList ScrollView 嵌套 滚动冲突 VirtualizedList的工作方式、判断依据、项目边界和常见误区。
React Native 旧 Bridge 的异步序列化在大对象与高频调用下会出现什么瓶颈? 本文先给出可直接复述的结论,再用最小代码说明React Native Bridge 序列化 性能瓶颈的工作方式、判断依据、项目边界和常见误区。
React Native 原生模块初始化过早为什么会拖慢启动,如何判定是否该延迟初始化? 本文先给出可直接复述的结论,再用最小代码说明React Native 原生模块 初始化 启动性能的工作方式、判断依据、项目边界和常见误区。
为什么 React Native 中用 Animated 改变 width/height 无法走原生驱动,代价是什么? 本文先给出可直接复述的结论,再用最小代码说明Animated 布局动画 width 原生驱动 不支持的工作方式、判断依据、项目边界和常见误区。
React Native 列表项入场动画为什么容易和 FlatList 虚拟化冲突? 本文先给出可直接复述的结论,再用最小代码说明FlatList item 入场动画 复用 冲突的工作方式、判断依据、项目边界和常见误区。
React Native Animated 的 useNativeDriver 把什么工作移出了 JS 线程,支持哪些属性? 本文先给出可直接复述的结论,再用最小代码说明Animated useNativeDriver 原生驱动 支持属性的工作方式、判断依据、项目边界和常见误区。
React Native 中每帧 setState 驱动动画为什么是反模式? 本文先给出可直接复述的结论,再用最小代码说明React Native setState 动画 每帧 反模式的工作方式、判断依据、项目边界和常见误区。
React Native 应用冷启动慢,应如何分阶段定位是原生初始化还是 JS 执行耗时? 本文先给出可直接复述的结论,再用最小代码说明React Native 冷启动 性能定位的工作方式、判断依据、项目边界和常见误区。
React Native 中频繁的桥(Bridge)通信为什么成为性能瓶颈? 本文先给出可直接复述的结论,再用最小代码说明React Native Bridge 瓶颈 序列化的工作方式、判断依据、项目边界和常见误区。
为什么 React Native 线上包中残留 console.log 会造成可感知的性能损耗? 本文先给出可直接复述的结论,再用最小代码说明React Native console.log 性能 线上移除的工作方式、判断依据、项目边界和常见误区。
社区常见替代方案(如 Flash List)相对 React Native FlatList 解决的核心问题是什么? 本文先给出可直接复述的结论,再用最小代码说明FlatList 替代 Flash List 回收复用的工作方式、判断依据、项目边界和常见误区。
React Native FlatList 快速滚动出现白屏(blank cells)该如何定位与解决? 本文先给出可直接复述的结论,再用最小代码说明FlatList 快速滚动白屏 blank cells的工作方式、判断依据、项目边界和常见误区。
React Native FlatList 的 extraData 解决的是什么更新失效问题? 本文先给出可直接复述的结论,再用最小代码说明FlatList extraData 选中态不更新的工作方式、判断依据、项目边界和常见误区。
React Native FlatList 的 initialNumToRender 设置过小或过大各有什么后果? 本文先给出可直接复述的结论,再用最小代码说明FlatList initialNumToRender 首屏的工作方式、判断依据、项目边界和常见误区。
React Native FlatList 为什么建议固定行高或使用 getItemLayout? 本文先给出可直接复述的结论,再用最小代码说明FlatList getItemLayout 固定行高的工作方式、判断依据、项目边界和常见误区。
React Native FlatList 的 keyExtractor 为什么影响列表更新性能与正确性? 本文先给出可直接复述的结论,再用最小代码说明FlatList keyExtractor key 稳定性的工作方式、判断依据、项目边界和常见误区。
React Native FlatList 的 maxToRenderPerBatch 与 updateCellsBatchingPeriod 如何配合控制滚动流畅度? 本文先给出可直接复述的结论,再用最小代码说明FlatList maxToRenderPerBatch updateCellsBatchingPeriod的工作方式、判断依据、项目边界和常见误区。
React Native FlatList 的列表项为什么应该做成纯组件并避免行内匿名回调? 本文先给出可直接复述的结论,再用最小代码说明FlatList renderItem 重渲染 PureComponent的工作方式、判断依据、项目边界和常见误区。
React Native FlatList 的 removeClippedSubviews 什么时候有用、什么时候会导致内容消失? 本文先给出可直接复述的结论,再用最小代码说明FlatList removeClippedSubviews bug的工作方式、判断依据、项目边界和常见误区。
React Native 中父组件状态频繁变化导致整个 FlatList 重渲染该怎么治理? 本文先给出可直接复述的结论,再用最小代码说明FlatList 父组件状态 重渲染的工作方式、判断依据、项目边界和常见误区。
React Native 中长列表为什么应该用 FlatList 而不是 ScrollView? 本文先给出可直接复述的结论,再用最小代码说明FlatList vs ScrollView 性能的工作方式、判断依据、项目边界和常见误区。
React Native FlatList 的窗口化(windowing)机制是怎样工作的? 本文先给出可直接复述的结论,再用最小代码说明FlatList windowSize 虚拟化 窗口化的工作方式、判断依据、项目边界和常见误区。
React Native 性能优化中 60fps 的帧预算意味着什么,JS 帧与 UI 帧有何区别? 本文先给出可直接复述的结论,再用最小代码说明React Native 60fps 帧预算 JS frame UI frame的工作方式、判断依据、项目边界和常见误区。
React Native 手势跟手动画要保证 60fps,关键约束是什么? 本文先给出可直接复述的结论,再用最小代码说明React Native 手势动画 60fps 掉帧的工作方式、判断依据、项目边界和常见误区。
React Native 横向卡片列表如何用 FlatList 实现吸附滚动且不掉帧? 本文先给出可直接复述的结论,再用最小代码说明FlatList 横向 snapToInterval 吸附的工作方式、判断依据、项目边界和常见误区。
React Native 图片解码发生在哪个线程,为什么仍可能让 UI 掉帧? 本文先给出可直接复述的结论,再用最小代码说明React Native 图片解码线程 为什么仍掉帧的工作方式、判断依据、项目边界和常见误区。
React Native Image 在 iOS 与 Android 上的缓存行为有什么差异,会带来什么实战问题? 本文先给出可直接复述的结论,再用最小代码说明React Native Image 缓存 iOS Android 差异的工作方式、判断依据、项目边界和常见误区。
React Native Image 组件在列表中使用时有哪些基础性能要求? 本文先给出可直接复述的结论,再用最小代码说明React Native Image 列表 性能 resizeMode的工作方式、判断依据、项目边界和常见误区。
React Native 列表图片加载时的闪烁与布局跳动如何从组件层面避免? 本文先给出可直接复述的结论,再用最小代码说明React Native Image 占位 fadeDuration 布局跳动的工作方式、判断依据、项目边界和常见误区。
React Native 直接渲染几 MB 的原图为什么会造成卡顿和内存飙升? 本文先给出可直接复述的结论,再用最小代码说明React Native 大图 解码 内存的工作方式、判断依据、项目边界和常见误区。
React Native 中本地静态图片与远程图片在打包与渲染性能上有哪些本质区别? 本文先给出可直接复述的结论,再用最小代码说明React Native 本地图片 require 远程图片的工作方式、判断依据、项目边界和常见误区。
React Native Image.prefetch 适合什么场景,滥用会有什么代价? 本文先给出可直接复述的结论,再用最小代码说明React Native Image prefetch 预加载的工作方式、判断依据、项目边界和常见误区。
React Native 的 InteractionManager.runAfterInteractions 解决什么问题,有什么局限? 本文先给出可直接复述的结论,再用最小代码说明InteractionManager runAfterInteractions 场景的工作方式、判断依据、项目边界和常见误区。