采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
既然state是个纯粹的存数据的对象,也就涉及不到原型链的概念,为什么还要用那么深层次的对比,不用JSON.stringify进行两个state转成成字符串后在对比呢?是这种性能比第三节说的递归对比还差么?
hi
stringfy大部分情况都可以用来判断对象,但是有些情况会判断失误,比如对象的顺序
JSON.stringify({b:2,a:1}) === JSON.stringify({a:1,b:2})
比如会把null,undefind等统一变成null
JSON.stringify([null,undefined,NaN])
也就是说 就是存在可能state里面的对象顺序不一样但是内容一样,在这种情况下是不需要进行更新的 ,但是如果用了stringify就会判断他们不一样从而造成不必要的更新
非常感谢!
登录后可查看更多问答,登录/注册
全网唯一的React 16+Redux+React Router4实战课程,学到手是你的真本领!
2.3k 10
1.7k 9
1.4k 8
1.7k 8
1.6k 7
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号