Hiding properties in JS… for real

Sometimes, you want to hide the property of an object1. Probably you are a library author and you are afraid that:

  • your users will see it and attempt to use it
  • your users will try to enumerate over it although it might not make sense

So here is what you do: