Undefined: Null: Boolean: Number: Reference: string: Array: Object: Function: |
All value types occupy a fixed size in memory and come and go as functions are called and return. Reference types are garbage collected. They are created with the keywork "new" when calling a constructor function (more about that later) or for objects, arrays, and strings can be created from literals. Reference types live in a JavaScript managed heap.
/* ---------------------------------------------------------- * Set event handler */ function setHandler(id, event, handler) { var elem = find(id); if (elem === undefined) return; elem.addEventListener('click', handler, false /* don't use capture */); } <div id="button" class="buttonNoPress"> Click me <script> // need an anonymous function to provide clickEvent with its argument var wrappedHandler = function () { clickEvent(this); }; setHandler('button', 'click', wrappedHandler); </script> </div>