js组件的一种形势试验

var moudleFactory={
    setFunction:function(moudle, instance) {
        if (instance === undefined)
            instance = {};
        for (var i in moudle) {
            if (i !== "getInstance") {
                instance[i] = moudle[i];
            }
        }
        return instance;
    },
    moudle:{
        getName: function() {
            print(this.a);
        },
        getInstance: function() {
            var instance = moudleFactory.setFunction(moudleFactory.moudle);
            instance.a = 0;
            return instance;
        }
    },
    moudleb:{
        getName2: function() {
            print(this.b);
        },
        getInstance: function() {
            var instance = moudleFactory.moudle.getInstance();
            moudleFactory.setFunction(moudleFactory.moudleb, instance);
            instance.b = "属性";
            return instance;
        }
    }
};
var a=moudleFactory.moudle.getInstance();
a.a=1;
var b=moudleFactory.moudleb.getInstance();
a.getName();//输出-->1
b.getName();//输出-->0
b.getName2();//输出-->属性
print(a.getName===b.getName);//输出-->true
//每个组建实体的函数是公用的 达到节省内存作用

 

posted @ 2013-10-11 10:38  HeiMan  阅读(179)  评论(0编辑  收藏  举报