Symbol
Symbols are always unique, and the main use case is to create a private variables on objects. To achieve true privacy when it comes to object’s property, it is quite challenging, with symbols you can do that seamlessly. you are going to add difference variable to objects and they are essentially going to be unique and not clash with one another
You can pass a string when creating your symbol but this is just for your own benefit to help you recognize your symbol when dealing with it.
Despite being unique, there is a way you can create a symbol which is not that unique. using Symbol.for Every Symbol.for(“key”) call will always return the same Symbol for a given value of “key”.