在React中使用状态时,建议将其保留为small as possible
很多时候,我使用javascript数组来存储例如React状态的ID列表。
state = {
myListOfIDs: []
}
但是为了防止重复,使用javascript Set是否正确?或者React渲染是否很重要?
答案 0 :(得分:1)
它无法改变渲染,最多可以改变虚拟DOM的协调时间,但我怀疑你会看到任何差异。我使用过套装,它从未显着影响性能。
您可以将集合视为值为true
的对象,即{1,2,3} ~ {1: true, 2: true, 3: true}
。如果对象可以存储状态,那么集合也是如此。
如果您担心数据结构,可以通过强制转换两次使数组只包含唯一元素:
a = [1,2,3,3,3]
b = new Set(a) // {1,2,3}
c = [...b] // [1,2,3]