zoukankan      html  css  js  c++  java
  • 6.js模式-中介者模式

    1. 中介者模式

    所有对象通过中介者进行通信

    var playDirector = (function(){

          var players = [];

          var options = {};

         

          options.add = function(p){

                 players.push(p);

          }

         

          options.die = function(p){

                 for(var i = 0;i<players.length;i++){

                        if(players[i] === p){

                               players.splice(i,1);

                        }else{

                               players[i].die('die');

                        }

                 }

          }

         

          var receiveMsg = function(){

                 var key = Array.prototype.shift.call(arguments);

                

                 options[key].apply(this,arguments);

          }

         

          return {

                 receiveMsg:receiveMsg

          }

    })();

    function play(name){

          this.name = name;

          this.state = 'alive';

    }

    play.prototype.die = function(){

          this.state = 'die';

          playDirector.receiveMsg('die',this);

    }

    play.prototype.receive = function(msg){

          console.log(msg);

    }

  • 相关阅读:
    《A First Course in Probability》-chaper5-连续型随机变量-随机变量函数的期望
    Codeforces 837F
    Codeforces #428 Div2 D
    poj3233(等比矩阵求和)
    Codeforces #427 Div2 D
    Codeforces 837E
    hdu6086(AC 自动机)
    hdu2825(AC 自动机)
    poj2778(AC 自动机)
    Codeforces #426 Div2 D(线段树优化 DP )
  • 原文地址:https://www.cnblogs.com/SLchuck/p/4869716.html
Copyright © 2011-2022 走看看