侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

javascript的装饰者模式(七)

2024-05-11 星期六 / 0 评论 / 0 点赞 / 77 阅读 / 909 字

装饰者是一种实现继承的替代方案。当脚本运行时,在子类中增加行为会影响原有类所有的实例,而装饰者却不然。取而代之的是它能给不同对象各自添加新行为。 //需要装饰的类(函数)function Macboo

装饰者是一种实现继承的替代方案。当脚本运行时,在子类中增加行为会影响原有类所有的实例,而装饰者却不然。取而代之的是它能给不同对象各自添加新行为。

//需要装饰的类(函数)function Macbook() {    this.cost = function () {        return 1000;    };}function Memory(macbook) {    this.cost = function () {        return macbook.cost() + 75;    };}function BlurayDrive(macbook) {    this.cost = function () {        return macbook.cost() + 300;    };}function Insurance(macbook) {    this.cost = function () {        return macbook.cost() + 250;    };}// 用法var myMacbook = new Insurance(new BlurayDrive(new Memory(new Macbook())));console.log(myMacbook.cost());

优点是把类(函数)的核心职责和装饰功能区分开了。

广告 广告

评论区