首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
以乐之名
掘友等级
前端开发工程师
|
IN Load
不疯魔不成活。
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
206
文章 180
沸点 26
赞
206
返回
|
搜索文章
最新
热门
日积跬步,apply/call/bind 自我实现
call/apply/bind 日常编码中被开发者用来实现 “对象冒充”,也即 “显示绑定 this“。 面试题:“call/apply/bind源码实现”,事实上是对 JavaScript 基础知识的一个综合考核。 初步思路有个大概,剩下的就是完善代码。 使用 Object.…
JavaScript设计模式(八):组合模式
调用顶层对象,会自行遍历其下的叶对象执行。 树对象和叶对象接口统一,树对象增加一个缓存数组,存储叶对象。执行树对象方法时,将请求传递给其下叶对象执行。 CFolder 与 CFile 接口保持一致。执行 scan() 时,若发现是树对象,则继续遍历其下的叶对象,执行 scan(…
JavaScript设计模式(七):命令模式
生活小栗子:客户下单,订单记录了客户购买的产品,仓库根据订单给客户备货。 命令对象 command(接收命令,调用接收者对应接口处理发布者的请求)。 发布者 invoker 和接收者 receiver 各自独立,将请求封装成命令对象 command ,请求的具体执行由命令对象 …
JavaScript 设计模式(六):观察者模式与发布订阅模式
简单点:女神有男朋友了,朋友圈晒个图,甜蜜宣言 “老娘成功脱单,希望你们欢喜”。各位潜藏备胎纷纷失恋,只能安慰自己你不是唯一一个。 目标对象 Subject 状态变更时,通知所有 Observer。 Subject 添加一系列 Observer, Subject 负责维护与这些…
JavaScript 设计模式(五):迭代器模式
上半部分开始... 简单理解(白话理解):统一 “集合” 型数据结构的遍历接口,实现可循环遍历获取集合中各数据项(不关心数据项中的数据结构)。 生活小栗子:清单 TodoList。每日清单有学习类、生活类、工作类、运动类等项目,清单列表只管罗列,不管类别。 “迭代器模式的核心,…
JavaScript 设计模式(四):适配者模式
对于强迫症患者,那么多形状各异的接口,对应着不同数据线。如果可以有一个转接口实现集合兼容,岂不美哉。没错,这样一个适配器,你值得拥有。(各大厂商加把劲。。。) 适配器模式非常适用于跨浏览器兼容,例如强大的 jQuery 封装了事件处理的适配器,解决跨浏览器兼容性问题,极大简化我…
JavaScript 设计模式(三):代理模式
当我们不方便直接访问某个对象时,或不满足需求时,可考虑使用一个替身对象来控制该对象的访问。替身对象可对请求预先进行处理,再决定是否转交给本体对象。 经常 shopping 的同学,对代购应该不陌生。自己不方便直接购买或买不到某件商品时,会选择委托给第三方,让代购或黄牛去做购买动…
JavaScript 设计模式(二):策略模式
诸葛给刘备的锦囊妙计,遇到任何困难都有应对计策。策略模式实现的也是类似的场景。 再来一栗:给喜欢的女生买冰淇淋,事先不了解其喜好,只能集齐各种味道,总会命中。就是比较 “费钱”,这也是策略模式的缺点,需事先考虑所有应对场景。 假设我们一个开发团队,人员组成包括(开发组长,后端,…
JavaScript 设计模式(一):单例模式
单例模式是创建型设计模式的一种。针对全局仅需一个对象的场景,如线程池、全局缓存、window 对象等。 JavaScript 是一门非正规面向对象的语言,并没有类的定义。而单例模式要求一个 “唯一” 和 “全局访问” 的对象,在 JavaScript 中类似全局对象,刚好满足单…
个人成就
文章被点赞
197
文章被阅读
39,287
掘力值
978
关注了
47
关注者
105
收藏集
9
关注标签
26
加入于
2017-07-27