一、回調函數隊列
class callBacks {
private list = [];
public function add(fn) {
this.list.add(fn);
}
public function remove(fn) {
this.list.remove(fn);
}
public function fire() {
for (fn in list) {
fn();
}
}
}