gpt4 book ai didi

javascript - 比较 getDerivedStateFromProps 中的不同状态数组

转载 作者:行者123 更新时间:2023-12-03 00:58:33 24 4
gpt4 key购买 nike

如何比较数组中的状态?我无法使用 !== 或使用 .length

static getDerivedStateFromProps(props, state) {
if(props.languages !== statelanguages)) {
return {
languages: props.languages
}
}
return null
}

我可以使用 lodash 中的 isEqual,但这会不会太过分了?

最佳答案

这取决于您的检查应有多彻底。如果您想绝对确定 2 个数组完全匹配(这意味着它们的所有元素都匹配),那么简单的长度或引用检查是不够的。您将需要 lodash.isEqual 或类似的东西。

请注意,如果 props.languagesstatelanguages “引用”相等,则 lodash.isEqual 将会非常快,这意味着如果 props.languages === statelanguages 计算结果为 true,它将立即返回 true。如果不是,那么它会继续检查长度检查和深度相等检查 - 如果数组大小很大,最后一项检查的成本可能会很高。

关于javascript - 比较 getDerivedStateFromProps 中的不同状态数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52712268/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com