随笔分类 - JavaScript
摘要:代理模式是为一个对象提供一个代用品或占位符,以便控制对它的访问。 分类: 1. 保护代理: 代理可以为实际需要进行的操作过滤掉一些请求。 2. 虚拟代理: 把一些开销很大的对象,延迟到真正需要它的时候才去创建。 应用:1. 虚拟代理实现图片预加载 var myImage = (function(){
阅读全文
摘要:策略模式: 定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换。将不变的部分和变化的部分隔开是每个设计模式的主题,策略模式也不例外,策略模式的目的就是将算法的使用与算法的实现分离开来。(自己改进后的代码用了大量的这种方式) 以不同绩效级别发放不同的奖金为例: var strategies
阅读全文
摘要:单例模式: 如点击登陆时弹出的登陆页面只有一个,并不会因为你多点几下登陆就出现多个登陆框。 1. 代理实现单例模式(传统面向对象) 把负责管理单例的逻辑移到了代理类proxySingletonCreateDiv中,这样,CreateDiv就变成了一个普通的类,它跟proxySingletonCrea
阅读全文
摘要:一、函数节流 一些场景下,函数有可能会被非常频繁的调用,从而造成极大的性能问题。如:window.onresize事件、mousemove事件(拖拽)、上传进度等。以上场景中的共同问题就是函数被触发的频率太高了,解决方案就是需要我们按时间来忽略掉一些事件请求,比如在500ms内只打印一次。显然,可以
阅读全文
摘要:注册事件的方式 1. ele.on事件类型 = function(){} 兼容性最高,但只能绑定一个 2. addEventListener(事件类型,事件处理函数,useCapture) 第三个参数默认是false,冒泡阶段执行 3. attachEvent(事件类型,事件处理函数) 1.在注册事
阅读全文
摘要:## 函数的四种调用模式 1.函数模式 this >window function test(){ console.log(this); } test(); 2.方法模式 this >调用方法的对象 var obj1 = { test:function(){ console.log(this); }
阅读全文
摘要:使用递归获取后代元素 1.自己调用自己 2.要有结束的条件 //斐波那契 数列 //1 1 2 3 5 8 13 21 //1 1 //2 1 //3 第1项 + 第2项 //4 第2项 + 第3项 //5 第3项 + 第4项 //n (n-2)+(n-1) function fibonacci(n
阅读全文
摘要:函数创建: 3种创建函数的方式 * 直接声明函数 * 函数表达式 * new Function() arguments对象arguments对象是函数内部的一个对象,在函数调用的时候,系统会默认的将所有传入的实参存入该对象 注意:不管有没有形参,实参都会被存入该对象arguments.length
阅读全文
摘要:1.原型是什么? 在构造函数创建出来的时候,系统会默认的创建并关联一个对象,这个对象就是原型,原型对象默认是空对象 默认的原型对象中会有一个属性constructor指向该构造函数 原型的作用 原型对象中的成员,可以被使用和它关联的构造函数创建出来的所有对象共享 2. 原型对象的使用 1. 使用对象
阅读全文
摘要:前言 JS作为面向对象的弱类型语言,继承也是其非常强大的特性之一。那么如何在JS中实现继承呢?让我们拭目以待。 JS继承的实现方式 既然要实现继承,那么首先我们得有一个父类,代码如下: // 定义一个动物类 function Animal (name) { // 属性 this.name = nam
阅读全文
摘要:面向对象三大特性:封装 继承 多态 一、使用函数将代码封装,使得复用性更高 使用函数封装带来的问题: 1.全局变量污染 2.代码结构不够清晰,维护不方便 使用对象进行封装后的优势 1.暴露在全局的只有一个对象名 不会造成全局变量污染 2.使用对象将代码进行功能模块的划分,有利于日后的维护 二、在Ja
阅读全文
摘要:1.面向过程的思维方式: 就是把解决问题的关注点,放到解决问题的每一个详细的步骤上面! 面向对象的思维方式:(面向对象就是一种思维方式,与代码关系不大) 就是把解决问题的关注点,放到解决问题需要的一系列对象身上 2.面向对象编程的相关概念: 1、什么是对象!!!! 万物皆对象 2、对象的特征 对象的
阅读全文
摘要:恢复内容开始 前三章为基础知识,为了方便以后查看,所以比较啰嗦。这里对函数的基本操作没有记录。 1.JavaScript的实现 虽然 JavaScript 和 ECMAScript 通常都被人们用来表达相同的含义,但 JavaScript 的含义却比 ECMA-262 中规定的要多得多。 一个完整的
阅读全文

浙公网安备 33010602011771号