首页
聂骁骏
取消

设计模式 03 — 策略模式

1. 定义 《JavaScript 设计模式与开发实践》中对策略模式的定义如下: 策略模式的定义是:定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换。 2. 案例 在 Web 项目中,我们在发请求前都会先验证参数,满足要求后才会发请求,如下面预约会议的函数 submit : JS var submit = function (meeting) { // 1...

设计模式 02 — 观察者模式

1. 定义 《JavaScript设计模式与开发实践》中对观察者模式的定义如下: 发布—订阅模式又叫观察者模式,它定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知。在JavaScript 开发中,我们一般用事件模型来替代传统的发布—订阅模式。 2. 案例 Vue2 中有四个事件相关的 API: vm.$on:监听当前实例上的自定...

设计模式 01 — 职责链模式

1. 定义 职责链模式的定义是:使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系: Request –> A –> B –> C –> D。 2. 面向对象的职责链 2.1 构造函数 Chain 首先定义一个构造函数 Chain: // 构造函数 Chain // fn 为需要被包装的函数 // nextNode 为链中的下一个节点 ...

Jekyll 要点

1. 概述 此篇博客记录了 Jekyll 官方文档 中的一些要点。 注意:此博文中为了防止示例代码被 jekyll 识别,使用了 Liquid 中的 Raw 标签。 2. 目录结构 一个基本的 Jekyll 项目通常看起来像这样: . ├── _config.yml ├── _data | └── members.yml ├── _drafts | ├── begin-w...