Trying to make classical OOP

by finom

JavaScript

var _ = {
    Class: function(options, terms) {
        var static = [],
            private = [],
            protected = [],
            public = [],
            constructAvailable = {}
            parentTerms;
        if (options.inherits) {
            parentTerms = options.inherits.___terms;
            terms.construct = terms.construct.bind();
        }
        for (var key in terms) if (terms.hasOwnProperty(key)) {
            switch (terms[key][0]) {
            case 'static':
                static.push(terms[key][1]);
                break;
            case 'private':
                private.push(terms[key][1]);
                break;
            case 'protected':
                protected.push(terms[key][1]);
                break;

            case 'public':
                public.push(terms[key][1]);
                break;
            }
        }

        terms.construct = terms.construct.bind(available);

        terms.construct.___terms = {
            static: static,
            protected: protected,
            public: public

        };

        return terms.construct

        console.log(static, private, protected, {});
    }
}
Class1 = _.Class({
    inherits: null
}, {
    construct: function() {},
    method1: ['static', function() {
        alert('Class1 static')}],
    method2: ['private', function() {
        alert('Class1 private')}],
    method3: ['protected', function() {
        alert('Class1 protected')}],
    method4: ['public', function() {
        alert('Class1 public')}]
})