This example needs (WeakMaps)[http://kangax.github.io/compat-table/es6/#WeakMap] which almost has full support on modern Chrome/Firefox.
For information about the implmentation, read: https://developer.mozilla.org/en-US/Add-ons/SDK/Guides/Contributor_s_Guide/Private_Properties