The problem Javascript allows to index objects not only with strings, numbers, but also with objects. It uses toString() object method to calculate the object index. If method is not overwritten, the generated index is "[object Object]". Many users do not know this or forget this and cause different objects going into same index when using more of them.
The solution Instead of using the default value "[object Object]" for objects, use their hash codes. You can also prepend them with "function:" or "object:" to let the user know index origin when iterating over object keys. And if person has overwritten the behavior of toString() object method, use it's returned value as index (to consider). This should be less error-prone.
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

