美文网首页
2021-11-17 - 学习记录

2021-11-17 - 学习记录

作者: 张中华 | 来源:发表于2021-11-18 12:30 被阅读0次
  1. 适配器模式 - js:
  2. 代理模式 - js
  3. 组合模式 - js
/*
 * @Author: zzh
 * @Date: 2021-11-17 09:43:48
 * @LastEditors: zzh
 * @LastEditTime: 2021-11-17 14:16:50
 * @FilePath: \origin\设计模式\结构型\adapter.js
 * @Description: 适配者模式
 * 注意事项:适配器模式本质上是一个   亡羊补牢的模式     ,
 * 它解决的是现存的两个接口之间不兼容的问题,不应该在软件的初期开发阶段就使用该模式;
 * 如果在设计之初就能够统筹的规划好接口的一致性,那么适配器就应该        尽量减少使用   。
 * 将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
 * 主要解决:主要解决在软件系统中,常常要将一些"现存的对象"放到新的环境中,而新环境要求的接口是现对象不能满足的。
 */

// 老接口
const getOldCity = () => [ { name: 'nanjin', id: 1 }, { name: 'suzhou', id: 2 } ];

// 新接口希望是下面形式
// { hangzhou: 11, jinhua: 12 }

// 这时候就可采用适配者模式
const adaptor = (oldCity) => {
    let result = {}; 
    for (let city of oldCity) {
        result[city.name] = city.id;
    }

    return result;
} 


console.log(adaptor(getOldCity()));

相关文章

  • 2021-11-17 - 学习记录

    适配器模式 - js: 代理模式 - js 组合模式 - js

  • 万马奔腾

    内心万马奔腾, 情绪亚历山大! 加油! 2021-11-17

  • 读书笔记(四十三)

    书名:《非暴力沟通》 作者:【美】马歇尔·卢森堡 分类:人际交往 阅读时间:2021-11-17 内容简介:马歇尔...

  • Flutter学习记录-汇总

    Flutter学习记录-布局Flutter学习记录-页面跳转Flutter学习记录-交互Flutter学习记录-基...

  • 2018.9.14托小级部学习记录检查

    王淑月老师的学习记录 李静老师的学习记录 赵小盼学习记录 王朝燕学习记录 李杰老师学习记录 荆宁宁老师学习记录 吴...

  • 冬天已来,你准备好了吗?

    D341 2021-11-17 最近在调整状态,自己在做一些后端优化的工作,餐饮人的每天都很充实,细小而琐碎,却很...

  • 今日份幸福

    幸福日志2021-11-17 周三晴 今日份幸福一 收到同事送的平衡车。想省钱就按省钱的搞法,逛了几天咸鱼无果,于...

  • 2021-11-17周三

    2021-11-17 每日复盘 早上晚起了,来不及煮早餐了,洗漱,护肤,换衣服,把中午汤煮上,出门上班。楼下买个早...

  • 写给先生(84)

    2021-11-17 阴 大抵是思念作祟,姑娘横竖都睡不着。侧身躺着,打开手机,翻着旧时的文字,想再寻一遍你的影子...

  • 精华摘

    2021-11-17 周三 阴天 今天是周三,阴天,最高气温21度。体感舒适。刚才打开手机看到13点57分的时候,...

网友评论

      本文标题:2021-11-17 - 学习记录

      本文链接:https://www.haomeiwen.com/subject/jbmltrtx.html