React 为什么强调不可变数据(immutable)?不这么做会有什么坑?
Why does React emphasize immutable data, and what pitfalls arise if you mutate state directly?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
分类: Frontend
标签: immutability, state
参考答案摘要
答案 不可变数据便于 浅比较 判断更新、追踪变更来源与时间线(调试/回滚)。如果直接修改 state(引用不变),React 可能认为“没变化”而跳过渲染,或在依赖旧引用的逻辑中产生诡异行为。正确做法是创建新对象/新数组替换原值,或使用 Immer 等工具在保持开发体验的同时生成不可变结果。
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。