js代理模式是什么

美女程序员鼓励师

说明

1、为其他对象提供一种代理,便以控制对这个对象的访问,不能直接访问目标对象。

2、代理模式最基本的形式是对访问进行控制,而本体对象则负责执行所分派的那个对象的函数或者类。

优点

可以保护对象,代理对象可以代替本体被实例化,并使其可以被远程访问。

优化性能,减少开销很大的对象。

缓存结果。

实例

js;toolbar:false">class Flower {}

// 源对象

class Jack {

    constructor (target) {

        this.target = target;

    }

    sendFlower (target) {

        const flower = new Flower();

        this.target.receiveFlower(flower)

    }

}

// 目标对象

class Rose {

    receiveFlower (flower) {

        console.log('收到花: ' + flower)

    }

}

// 代理对象

class ProxyObj {

    constructor () {

        this.target = new Rose();

    }

    receiveFlower (flower) {

        this.sendFlower(flower)

    }

    sendFlower (flower) {

        this.target.receiveFlower(flower)

    }

}

const proxyObj = new ProxyObj();

const jack = new Jack(proxyObj);

jack.sendFlower(proxyObj); // 收到花:[object Object]

以上就是js代理模式的介绍,希望对大家有所帮助。更多js学习指路:js教程

以上是 js代理模式是什么 的全部内容, 来源链接: utcz.com/z/545144.html

回到顶部