Object Oriented Javascript
Saturday, March 4th, 2006
I never really gave it much thought, but it turns out that, naturally, Javascript supports Object Oriented programming. It’s a bit awkward, but still:
/*****************************************************************
 * Class description
 *****************************************************************/
function MyClass(param1, param2) {
    /*------------------------------------------------------------
     * PROPERTIES
     *-----------------------------------------------------------*/
    this.property1 = false;
    thisObj.eventHappened = false;
    /*------------------------------------------------------------
     * METHODS
     *-----------------------------------------------------------*/
    /**
     * method1
     */
    this.method1 = function(param2) {
        this.property1 = param2;
    }
    /*------------------------------------------------------------
     * CONSTRUCTOR
     *-----------------------------------------------------------*/
    this.property2 = param1
    this.method1(param2)
    var out = "";
    out += "<div id='"+param1+"'>"+param2+"</div>";
    document.write(out);
    this.div1 = document.getElementById(param1);
    /*------------------------------------------------------------
     * EVENTS
     *-----------------------------------------------------------*/
    /* Because 'this' in events is actually the event, we assign a
     * special variable here so we can reference this object from
     * the events.
     */
    var thisObj = this;
    this.div1.onkeyup = function(e) {
        alert("key");
        thisObj.eventHappened = true;
    }
}
var myClassInstance = MyClass('myDiv', 'Hello!');
        