Welcome 微信登录

首页 / 脚本样式 / JavaScript

JavaScript设计模式之建造者模式介绍

JavaScript设计模式之建造者模式介绍

建造者模式说明1. 将一个复杂对象的 构造 与它的表示相分离,使同样的创建过程可有不同的表示,这就叫做建造者模式。2. 面向对象语言中的说明,主要角色:1>. Builder 这个接口类,定义这个建造者[工人],统一的可操作的行为方式,它表示一个复杂的结构对象;2>. ConcreteBuilder 用于创建[实现] Builder 各种形态的实例对象,来表示 Builder 不同的表示;3>. Director 这个指挥者 用于指导 B...
理解javascript回调函数

理解javascript回调函数

把函数作为参数传入到另一个函数中。这个函数就是所谓的回调函数经常遇到这样一种情况,某个项目的A层和B层是由不同的人员协同完成.A层负责功能funA,B层负责funcB。当B层要用到某个模块的数据,于是他对A层人员说,我需要你们提供满足某种需求的数据,你给我提供一个接口。A层的人员说:我给你提供数据,怎么展示和处理则是B的事情。当然B层不可能为你每个需求都提供一个数据接口,B给A提供一个通过的接口.B得到数据,然后B写函数去展示。即,你需要和其他人合作,别人...
JavaScript设计模式之单件模式介绍

JavaScript设计模式之单件模式介绍

单件模式说明1. 说明:单件模式,就是静态化的访问中已经实例化的对象,这个对象只能通过一个唯一的入口访问,已经实例或待实例化的对象;面向对象语言如Java, .Net C#这样的服务端动态语言里,能保证类的操作有顺的进行,避免并行操作使数据发生混乱的情况;2. 单件模式的好处:1>. 减少 new 的操作,以免加快内存频繁操作,占用内存;2>. 尽量减少大系统的对象的开销;3>. 就是上面说的,可以保障某些类型的操作有顺序准确的操作,以免...
JavaScript设计模式之抽象工厂模式介绍

JavaScript设计模式之抽象工厂模式介绍

抽象工厂模式说明1. 工厂方法模式的问题: 在工厂方法模式里,创建类都需要通过 工厂类,如果要扩展程序,就必须修改工厂类,这违背了闭包原则,对扩展开放,对修改关闭;对于设计有一定的问题。2. 如何解决:就要用到抽象工厂模式,就是对功能类单独创建工厂类,这样就不必修改之前的代码,又扩展了功能。3. 工厂模式其实就是对 实现同一接口的 实现类 的 统一 工厂方式创建调用,但 javascript 没有接口这号东西,所以就去掉这一层 实现,但位功能类的成员及方法...
JavaScript设计模式之工厂方法模式介绍

JavaScript设计模式之工厂方法模式介绍

1. 简单工厂模式说明:就是创建一个工厂类,里面实现了所对同一个接口的实现类的创建。但是好像JavaScript 好像没有 接口 这号东西,所以我们去掉接口这个层; 当然,我们这里的 实现类 下的成员变量,方法应该都是一样的;例如:这时举短信发送跟邮件发送的例子;1>. 邮件发送[实现]类复制代码 代码如下:function MailSender() { this.to = ""; this.title = ""; this.content = ""...
JavaScript异步加载浅析

JavaScript异步加载浅析

前言关于JavaScript脚本加载的问题,相信大家碰到很多。主要在几个点——1> 同步脚本和异步脚本带来的文件加载、文件依赖及执行顺序问题2> 同步脚本和异步脚本带来的性能优化问题深入理解脚本加载相关的方方面面问题,不仅利于解决实际问题,更加利于对性能优化的把握并执行。先看随便一个script标签代码——复制代码 代码如下:<script src="js/myApp.js"></script>如果放在<head&...
nodejs中实现路由功能

nodejs中实现路由功能

初学Node,发现了与自己之前的观点完全不同的场面——你眼中的JavaScript,是干什么用的呢?特效?or 只是与客户端的交互?可以说,JavaScript最早是运行在浏览器中的,然而你要这样想,浏览器只是你提供了一个上下文(context),它定义了 使用JavaScript可以做什么,这里可以想成类似的一个企业,企业定义了你可以在这里做什么,但是并没有说太多关于JavaScript语言本身可 以做什么。事实上,作为一门完整的语言,JavaScrip...
浅谈JavaScript function函数种类

浅谈JavaScript function函数种类

本篇主要介绍普通函数、匿名函数、闭包函数1.普通函数介绍1.1 示例复制代码 代码如下:function ShowName(name) { alert(name);}1.2 Js中同名函数的覆盖在Js中函数是没有重载,定义相同函数名、不同参数签名的函数,后面的函数会覆盖前面的函数。调用时,只会调用后面的函数。复制代码 代码如下:var n1 = 1;function add(value1) { return n1 + 1;}alert(add(n1));/...
jQuery中queue()方法用法实例

jQuery中queue()方法用法实例

本文实例讲述了jQuery中queue()方法用法。分享给大家供大家参考。具体分析如下:此方法能够显示或者操作在匹配元素上执行的函数队列。此方法可能用的并不是太频繁,但是却非常的重要,下面就结合实例来介绍一下次方法的用法。根据方法参数的不同,作用也有所不同。说明:建议结合dequeue()函数一起学习。语法结构一:复制代码 代码如下:$("selector").queue(queueName)参数列表:参数描述queueName可选。 第一个匹配元素上动画...
jQuery中dequeue()方法用法实例

jQuery中dequeue()方法用法实例

本文实例讲述了jQuery中dequeue()方法用法。分享给大家供大家参考。具体分析如下:此函数能够从队列最前端移除一个队列函数,并执行它。建议和queue()函数一起学习。语法结构:复制代码 代码如下:$(selector).dequeue(queueName)参数列表:参数描述queueName可选。队列的名称。默认是 "fx",动画队列。实例代码:复制代码 代码如下:<!DOCTYPE html><html><head...
浅谈JavaScript Array对象

浅谈JavaScript Array对象

Array 数组1. 介绍 数组是值的有序集合。每个值叫做一个元素,而每个元素在数组中有一个位置,以数字表示,称为索引。JavaScript数组是无类型:数组元素可以是任意类型,并且同一个数组中的不同元素也可能有不同的类型。 --《JavaScript权威指南(第六版)》2. 定义复制代码 代码如下:var names = new Array("张三", "李四", "王五");//或者var names = ["张三", "李四", "王五"];3. 属...
jQuery中clearQueue()方法用法实例

jQuery中clearQueue()方法用法实例

本文实例讲述了jQuery中clearQueue()方法用法。分享给大家供大家参考。具体分析如下:此方法能够清空对象上尚未执行的所有队列。如果不带参数,则默认清空的是动画队列。这跟stop(true)类似,但stop()只能清空动画队列,而这个可以清空所有通过queue()创建的队列。语法结构:复制代码 代码如下:$(selector).clearQueue(queueName)参数列表:参数描述queueName可选。定义要停止的队列的名称。默认是 "f...
浅谈JavaScript Date日期和时间对象

浅谈JavaScript Date日期和时间对象

Date 日期和时间对象1. 介绍 Date对象,是操作日期和时间的对象。Date对象对日期和时间的操作只能通过方法。2. 构造函数2.1 new Date() :返回当前的本地日期和时间参数:无返回值:{Date} 返回一个表示本地日期和时间的Date对象。示例:复制代码 代码如下:var dt = new Date();console.log(dt); // => 返回一个表示本地日期和时间的Date对象2.2 new Date(millise...
JavaScript中的alert()函数使用技巧详解

JavaScript中的alert()函数使用技巧详解

在JavaScript代码中,可以使用window对象的alert()函数来显示一段文本,从而进行程序的调试,或者向用户警示相关信息:复制代码 代码如下://Use window object"s alert() functionwindow.alert("sample text");这一写法可以简化为直接使用alert()函数:复制代码 代码如下://Simplified alert() usagealert("sample text");如果需要显示带...
深入分析原生JavaScript事件

深入分析原生JavaScript事件

JQuery这种Write Less Do More的框架,用多了难免会对原生js眼高手低。 小菜其实不想写这篇博客,貌似很初级的样子,但是看到网络上连原生js事件绑定和解除都说不明白,还是决定科普一下了。 首先声明,小菜懂的也不是很多,只是把我的思路和大家分享一下。DOM0事件模型 事件模型在不断发展,早期的事件模型称为DOM0级别。 DOM0事件模型,所有的浏览器都支持。 直接在dom对象上注册事件名称,就是DOM0写法,比如:复制代码 代码如下:do...
JavaScript中的console.log()函数详细介绍

JavaScript中的console.log()函数详细介绍

对于JavaScript程序的调试,相比于alert(),使用console.log()是一种更好的方式,原因在于:alert()函数会阻断JavaScript程序的执行,从而造成副作用;而console.log()仅在控制台中打印相关信息,因此不会造成类似的顾虑。什么是console.log()?除了一些很老版本的浏览器,现今大多数浏览器都自带调试功能;即使没有调试功能,也可以通过安装插件来进行补充。比如,老版本的Firefox没有自带调试工具,在这种情...
浅谈重写window对象的方法

浅谈重写window对象的方法

重写window对象的方法不是一件新奇的事,比如我们可能需要改变默认alert的行为,如何安全的重写呢? 小菜看到某知名IT网站是这样的写法:复制代码 代码如下:window.alert = function(){}; 或者复制代码 代码如下:alert = function(){}; 实际上,这种写法有些欠妥。这相当于在window对象上添加了一个alert属性,它的优先级比系统内置的alert高,所以可以达到重写的效果,但这很容易突破,执行以下语句...
<< 971 972 973 974 975 976 977 978 979 980 >>