DEV Community

Discussion on: Using Javascript Sets with React useState

Collapse
 
ganes1410 profile image
Ganesh R

Thanks for your reply. I agree that Array would be enough for most use cases. But if you have to maintain a list in the state that requires constant insertion and removal of items Set would be a good use-case for that in my opinion.

Coming to your second question. I would not use Set to store values that need to rendered. Instead of that, it should be used to store the state which modifies the values we are rendering like the example I used in the article.

Collapse
 
karataev profile image
Eugene Karataev

But if you have to maintain a list in the state that requires constant insertion and removal of items Set would be a good use-case for that in my opinion.

I really don't understand why Set is better in this case. Is it performance, because has is faster than includes?

I would not use Set to store values that need to rendered.

Well, it happened to me many times that project requirements change, and tomorrow you'll need to render values that today are stored in Set. Extra work to refactor Set to Array.

Thread Thread
 
ganes1410 profile image
Ganesh R

Hi, I am not saying Set should be the only thing used in this case. I am just saying it can be done using this way too. You are free to use whatever method suitable for your requirements.

Thread Thread
 
cmrdsenya profile image
Senya

With Set you don't have to implement duplication control manually, it provides it to you for free. If you add the same value for the second time, Set will just ignore it, while with Array you'll have the duplicate and you'll have to add more code to handle this case.