/*singleInstance.js*/
var _instance = null;//定义初始化_instance
module.exports = function(time){
function Car(time){
this.time = time;
}
this.getInstance = function(){
if(_instance != null){
return _instance;
}else{
return new Car(time);
}
}
}
/*target.js*/
module.exports = function(){
this.request = function(){//原接口
console.log('Target::request');
}
}
/*adapter.js*/
var util = require('util');
var Target = require('./target.js');
var Adaptee = require('./adaptee.js');
function Adapter(){
Target.call(this);
this.request = function(){//重写原接口
var adapteeObj = new Adaptee();//重写的内容
adapteeObj.specialRequest();
}
}
util.inherits(Adapter, Target);//通过继承原模块, 获得原接口
module.exports = Adapter;
/*Base.js*/
module.exports = function(){
this.dosomething = function(){
console.log("Nice to meet u.");
}
}
/*Decorator.js*/
var util = require("util);
var Base = require('./Base');
function Decorator(){
Base.call(this);
this.dosomething = function(){
Base.dosomething();
console.log('I am a decorator');//拓展内容
}
}
util.inherits(Decorator, Base);//继承
module.exports = Decorator;
/*被观察者*/
module.exports = function(){
var m_obserSet = [];//观察者列表
var _self = this;
this.addObser = function(observer){
m_obserSet.push(observer);//添加观察者
}
this.doAction = function(){
console.log("Observable do some action");
_self.notifyAllObeser();
}
this.notifyAllObeser = function(){//发生动作
for(var key in m_obserSet){//逐个通知观察者
m_obserSet[key].update();//观察者执行回调
}
}
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有