10 2017 档案
摘要:介绍 责任链模式(Chain of responsibility)是使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系。将对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理他为止。 请求以后,从第一个对象开始,链中收到请求的对象要么亲自处理它,要么转发给链中的下一个候选者
阅读全文
摘要:代理模式的定义,代理是一个对象(proxy)用它来控制目标对象的访问。为此他要是先与目标对象相同的接口,但是他不同于装饰者模式,它对目标对象不进行任何修改,它的目的在于延缓"复杂"对象的初始化时间。这样可以在用到这个目标对象的时候再初始化他(对于单例来讲更是重要)。 代理模式有两种分类: (1)普通
阅读全文
摘要:效果为, 步骤二,为对象(执行者)建立命令访问库 意思是可以通过extcute方法访问到addFlow方法 步骤四,客户端 发出者 步骤五,实例化客户端 这样html中的事件就可以起作用了。 在这里我们使用插件来让其功能支持自定义的键盘事件,插件名称为:keymaster.js 首先,如html中一
阅读全文
摘要:(2)扩展一个发布者的发布消息的方法(推模式) (3)扩展公共订阅的函数,和取消订阅的函数 订阅的函数: (5)发布部分 (5.1)使用门面模式--针对各浏览器的事件绑定兼容问题 (5.2)创建主应用函数 最后,订阅者界面 效果为: (1)cctv模块的 (2)gfb的效果为: 总结: 1.支持简单
阅读全文
摘要:通过两个例子的对比来凸显享元模式的特点:享元模式是一个为了提高性能(空间复杂度)的设计模式,享元模式可以避免大量非常相似类的开销。 第一实例,没有使用享元模式,计算所花费的时间和空间使用程度。 要求为:有一个城市要进行汽车的登记 (1)汽车类 (2)使用装饰者模式--计算函数的耗时 (3)具体的实例
阅读全文
摘要:这里我们通过需求逐渐引出装饰者模式。 下面是一个关于几代汽车的不同逐渐体现装饰者模式的。 首先,我们先引入一个接口文件 目的为检验实现类是否完全实现接口中的方法,代码如下, (1)统一接口 (2)实现接口并内部检验 (3)第一个汽车实例 现在我们开始有一个新的需求,汽车需要有附属的产品如: 音响(K
阅读全文
摘要:(3)服务端两个数的加法 (4)客户端调用服务端代码 二,现在有一个要求就是,需要换一个类库,但是客户端的程序不希望有大的改动。 (1)依然继承相同接口的基础上,类库为 此时我们如果需要使用该类库的话,客户端又不能该,那么用和之前的调用方式: 是完全不符合客户端的要求的。为了在保证客户端不变的情况下
阅读全文
摘要:在函数中 this 到底取何值,是在函数真正被调用执行的时候确定下来的,函数定义的时候确定不了。 执行上下文环境 : **定义**:执行函数的时候,会产生一个上下文的对象,里面保存变量,函数声明和this。 **作用**:用来保存本次运行时所需要的数据 当你在代码中使用了 this,这个 this
阅读全文
摘要:对于组合设计模式: (1)统一接口 (2)定义组合类 (3)定义叶子类 (4)应用 将学校,班级,组,学生关联起来 (5)客户端调用API,只需要简单的安排去上课即可,也就是客户端只需要写去上课的代码即可 总结,
阅读全文
摘要:(2)班级类 (3)组类 (4)学生类 其次,测试需满足如下为: 最后,开学了,我们准备按照要求去上课吧, 安排为:一班一组去上课 学校-->班级-->组-->学生 最后,我只是想安排一个都要写这么多的代码,那如何是一个学校有上千个班级,那么要疯了。
阅读全文
摘要:外部与一个子系统的通信必须通过一个系统的一个门面对象进行,这就是门面模式。 门面模式具备如下两个角色: 1. 门面角色 客户端可以调用这个角色方法,此角色中有子系统的应用(知晓相关的(一个或多个)子系统的功能和责任)。本角色会将所有从客户端发来的请求委派到相应的子系统去。 2. 子系统角色 可以同时
阅读全文
摘要:1,内聚 程序=数据+操作 =数据结构+算法(PASCAL之父Nicklaus Wirth) =对象+消息 对象是什么? 对象就是保管好自己的东西,做好自己的事情的程序模块 这就是内聚 2,依赖 一个对象往往需要跟其他对象打交道,既包括获取依赖于另一对象,也包括仰赖其他对象的行为,一旦发生便称为该对
阅读全文
摘要:针对该模式的例子现在不是很理解,写下来慢慢熟悉。 们要构建一个队列,队列里存放了很多ajax请求,使用队列(queue)主要是因为要确保先加入的请求先被处理。任何时候,我们可以暂停请求、删除请求、重试请求以及支持对各个请求的订阅事件。 (1)异步请求的函数封装 (2)建立一个简单的观察者模式 总结
阅读全文
摘要:1.使用情况 (1)事件的监控 #1,利用页面的button来选择宠物的例子(思路) #2,addEvent函数 总结:该种方式对于单元测试很难进行 改进为用简单的桥梁模式来解决 #1,后台中的api #2,桥梁 总结:这种做法使API和展现层完全分离,API和展现层可以灵活的变动。 (2)特权函数
阅读全文
摘要:第一步,Ajax操作接口(目的是起一个接口检测作用) (1)引入接口文件 第二步,实例化一个可以具体的ajax接口 第三步,针对接口的ajax实现类 (1)定义一个空类 (2)在该空类上直接扩展原型 实现接口里面的方法 第三步,使用检验 (1)实例化对象 (2)接口检验实现类是否完全实现接口中的方法
阅读全文
摘要:一,介绍 工厂模式创建对象(视为工厂里的产品)时无需指定创建对象的具体类。 工厂模式定义一个用于创建对象的接口,这个接口由子类决定实例化哪一个类。该模式使一个类的实例化延迟到了子类。而子类可以重写接口方法以便创建的时候指定自己的对象类型。 在这里将工厂简单分为三种: (2)继承文件 (4)各个实现类
阅读全文
摘要:1、什么是链式调用? 这个很容易理解,例如 一般的函数调用和链式调用的区别:链式调用完方法后,return this返回当前调用方法的对象。 首先,我们先来看看一般函数的调用方式 (1)先创建一个简单的类 (2)使用方式:一般的调用方式 (3)总结,该种方式有一个弊端就是:多次重复使用一个对象变量
阅读全文
摘要:单例模式也称为单体模式,其中: 1,单体模式用于创建命名空间,将系列关联的属性和方法组织成一个逻辑单元,减少全局变量。 逻辑单元中的代码通过单一的变量进行访问。 2,三个特点: ① 该类只有一个实例; ② 该类自行创建该实例,即在该类内部创建自身的实例对象; ③ 向整个系统公开这个实例接口 3,单体
阅读全文
摘要:一,首先,为什么要使用封装? 这是从信息的角度出发的,信息的隐藏是最终的目的,而封装只不过是实现隐藏的一种方法。 这里我们需要明白一点就是:类的定义有如下的三种方式: (第一种)门户大开型方式 (第二种)用命令规范区别私有和公有的方式 (第三种)闭包 现在详细描述一下每一种类的定义方式: 针对第一种
阅读全文
摘要:JavaScript中实现接口的方法有三种: 第一种,使用注释的方法实现接口 (2)用注释来注明实现的接口 总结: (3)检验属性的方法 (4)接口与实现类的配合实现 (5)使用 总结一下,该种方式只是简单判断了在实现时有没有传递与属性中相同的接口名称,而对于方法是否实现没有做验证。 3,应用 3.
阅读全文
摘要:一,继承 第一种方式:类与被继承类直接耦合度高 1,首先,准备一个可以被继承的类(父类),例如 2,然后,有个需要继承父类的子类 说明一下: (1)call方法可以将一个函数的对象上下文从初始化变成由this来决定 一个类去控制另一个类 (2)Teacher类去控制 Person类 用Teacher
阅读全文
摘要:如上图,SuperType是是一个函数,右侧的方框就是它的原型。 (2.2)第二种扩展方式,隐示扩展,通过__proto__属性。 2,简单方式实现继承 使用图梳理一下原理: 索引的变化: (1)
阅读全文
摘要:第一, 首先,使用关键字function定义一个类 然后,对象的实例化+调用 第二, (1)首先,先定义一个类 (2)然后,为类添加静态变量 静态方法 (3)调用 (2)为类添加属性 (3)调用
阅读全文
摘要:简单来说,回调函数:也就是将要执行的函数。 回调函数具体的定义为:函数A作为参数(函数引用)传递到另一个函数B中,并且这个函数B执行函数A。我们就说函数A叫做回调函数。如果没有名称(函数表达式),就叫做匿名回调函数。 (1)回调函数的定义 (2)回调函数的调用,一般为匿名函数,此时将匿名函数作为参数
阅读全文
摘要:第一种方式:可以在函数定义之前调用也可以在函数定义之后调用: (0)函数的调用 (1)函数的定义: (2)函数的调用 第二种方式:函数的调用只能是在函数定义之后。 (1)函数的定义 (2)函数的调用
阅读全文
摘要:单选 : 通过name指定为一组,只能选择一个 一组一个选项 两个input时: Js中判断哪一个被选中: 首先,通过input中的name属性值查到该组对象 。 然后,在根据每个对象的checded属(true 或者false)来判断选中与否。 最后,通过每个对象的value方法取到值。 多个单选
阅读全文
摘要:(1)var obj=setTimeout("location.href='http://www.baidu.com';",5000); (2)var obj1=setTimeout(function () { location.href="http://www.baidu.com"; },5000);
阅读全文
摘要:1. 脱离文档流。 脱离文档流,也就是将元素从普通的布局排版中拿走,其他盒子在定位的时候,会当做脱离文档流的元素不存在而进行定位。 2. 向左/向右浮动直到遇到父元素或者别的浮动元素。 3. 浮动会导致父元素高度坍塌。 4.浮动元素不占空间
阅读全文
摘要:HTML表格中<td scope="col">与<td scope="row">的含义 表格中 <td scope="col"> 的含义 <td scope="col"> 在该单元格中,从左侧开始写起 <td scope="row"> 在该单元格中,从右侧开始写起 Scope属性同时定义了行的表头和
阅读全文
摘要:在编写程序的时候,经常会想一下:我要做什么,我在做什么,更好的方法是把详细需求落实到文档,并时刻核对文档(有文档前提下)。 第一:大局为重:项目核心的功能 ,性能永远不是优先考虑的问题 第二:名字长一点好,用长一点的名字更好。可读性更好。 英文 第三:自说明代码很重要,但注释同样重要。 第四:适当抽
阅读全文
摘要:获取值之后的判断 登录成功后加载的界面: formMessage:
阅读全文
摘要:使用回车键实质还是点击事件==回车时将焦点聚居在某个标签上。 Html代码: JavaScript代码: 先判断是否是回车键:
阅读全文
摘要:步骤:(1)在body中使用onload方法 (2)对应onload执行的方法(JavaScript实现页面跳转)
阅读全文
摘要:数据类型 计算机是能做数学运算的机器,因此,计算机程序可以处理各种数值,但是计算机不仅能处理数值,还能处理文本、图形、音频、视频、网页等各种各样的数据,所以不同的数据,就需要定义不同的数据类型。【就像人会分成男人和女人一样。】 一,Number 数字类型 JavaScript不区分整数和浮点数,统一
阅读全文
摘要:一,代码风格 在jQuery程序中,不管是页面元素的选择、内置的功能函数,都是美元符号“$”来起 始的。而这个“$”就是jQuery当中最重要且独有的对象:jQuery对象=属性+方法,所以我们在页面元 素选择或执行功能函数的时候可以这么写: $(function(){}); //执行一个匿名函数
阅读全文
摘要:首先,jQuery对象 绰号$ ,只要是对象就会有属性和方法。针对jQuery对象是可以传递参数给他的,不同的参数有不同的意图,该对象可以自动辨别。
阅读全文

浙公网安备 33010602011771号