JavaScript 学习笔记十 练习任务系统

//开发一个任务系统,我们需要抽象出一个类来表示任务,对应的,
//每个任务都可能会有一个监听器,当任务执行之后,需要通知监听器。
//监听器的类
var EventListener = Base.extend({
    constructor : function(sense){
        this.sense =sense;
    },
    sense : null,
    handle : function(){
        logs(this.sense+"  occured");
    }
});
//任务类
var Task = Base.extend({
    constructor : function(name){
        this.name = name;
    },
    name : null,
    listener : null,
    execute : function(){
        logs(this.name);
        this.listener.handle();
    },
    setListener : function(listener){
        this.listener = listener;
    }
});
//创建类的方式很简单,需要给 Base.extend 方法传入一个 JSON 对象
//方法访问自身的成员时需要加 this 关键字
var pri = new Task("定时任务1");
var priListen = new EventListener("监听器1");
pri.setListener(priListen);
pri.execute();
//打印如下:
  //定时任务1
  //监听器1 occured

 

你可能感兴趣的:(JavaScript)