书城计算机网络大话设计模式
8183300000222

第222章 2 访问者模式

小A:“怎样去定义访问者模式?”

大B:“它的通俗定义是:在每个自定义对象中预定义一个Accept(请求访问)方法,这个方法会以对象为参数,调用Visitor(访问者)对象的visit方法来操作这个对象。Java运用多次重载来实现自动匹配接口,在JS中应该是内置了这种模式,所以真正的再仿效Java去实现是多余的与笨拙的。在JS中,可以定义任意一个以this为目标替代符的函数,使所有的对象可以用call或者apply来临时以它们自身的名义运行,一旦代入后,就是函数为刀俎,对象为鱼肉,任其妄为了。”