单例模式:保证一个类只有一个实例,并提供一个可以访问它的全局访问点. 一种简单.方便的写法就是用一个变量来标识当前类是否已经创建过对象,如果有,则返回已经创建好的对象,否则创建一个新对象,并将其返回. var Singleton = function(name) { this.name = name; this.instance = null; } Singleton.prototype.getName = function() { alert(this.name); } Singleton.g…
(转载地址:http://technicolor.iteye.com/blog/1409656) 之前在<JavaScript小特性-面向对象>里面介绍过JavaScript面向对象的特性了,有了面向对象之后,自然就会想——那是不是还有设计模式呢?由于js面向对象的方式是基于原型(prototype)的,而不是传统基于类型(class),所以js的设计模式也和经典的设计模式有些差异. 关于设计模式 先说说什么是设计模式吧.很多人都觉得“设计模式”这东西很玄乎,把Gof四人帮的<Desig…
最近打算系统的学习javascript设计模式,以便自己在开发中遇到问题可以按照设计模式提供的思路进行封装,这样可以提高开发效率并且可以预先规避很多未知的问题. 先从最基本的单例模式开始. 什么是单例模式 单例模式,从名字拆分来看,单指的是一个,例是实例,意思是说多次通过某个类创造出来实例始终只返回同一个实例,它限制一个类只能有一个实例.单例模式主要是为了解决对象的创建问题.单例模式的特点: 一个类只有一个实例 对外提供唯一的访问接口 在一些以类为核心的语言中,例如java,每创建一个对象就必须…
1. 什么是闭包? 参考MDN. 2. 闭包的使用示例 2.1 示例1 <div>1</div> <div>2</div> <div>3</div> <script> var nodes = document.getElementsByTagName('div'); for (var i = 0, len = nodes.length; i < len; i++) { /* 注意这里 */ (function (i)…
1.单利模式简单介绍 在<设计模式>中单利模式是一种比較简单的模式,定义例如以下: 确保某一个类仅仅有一个实例,并且自行实例化并向整个系统提供这个实例. 在javascript中则将代码组织为一个单元,这个逻辑单元能够通过一个单一的变量訪问,确保这个对象仅仅存在一份实例. 单体类在javascript中能够用来划分命名空间.降低网页中全局变量的数目. 小结:事实上就是把全部的代码封装到一个类中,訪问时就通过这个类訪问.好比生活中常见的电视遥控.把所须要的操作都封装到遥控上,訪问电视时,直接通过…
单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点. 一.实现一个标准的单例模式,用一个变量来标志当前是否已经为某个类创建过对象, 如果是,则在下一次获取该对象实例时,直接返回之前创建的对象 示例: var Singleton = function(name){ this.name = name; this.instance = null; // 使用一个变量来表示是否已经创建该对象 }; Singleton.prototype.getName = function(){ conso…
人比较笨,以前只做项目,案例,然而一些javascript的很多理论不知道该怎么描述,所以最近开启一波读书之旅: 标识符 1.定义 标识符以字母开头,可能后面跟上一个或多个字母.数字或者下划线. 2.用处 标识符被用于语句.变量.参数.属性名.运算符以及标记. 数值 1.数值在内部被表示为64位的浮点数: 2.NaN是一个数值,但是它不与任何值,包括它自己,即 NaN !== NaN 为 true: 3.isNaN可以检查数值是否为NaN: 4.方法: number.toExponential(…
前面的话 单例模式是指保证一个类仅有一个实例,并提供一个访问它的全局访问点. 单例模式是一种常用的模式,有一些对象往往只需要一个,比如线程池.全局缓存.浏览器中的window对象等.在javaScript开发中,单例模式的用途同样非常广泛.试想一下,单击登录按钮时,页面中会出现一个登录浮窗,而这个登录浮窗是唯一的,无论单击多少次登录按钮,这个浮窗都只会被创建一次,那么这个登录浮窗就适合用单例模式来创建 标准单例 要实现一个标准的单例模式并不复杂,无非是用一个变量来标志当前是否已经为某个类创建过对…
第7章 浏览器环境 7.1 在HTML页面中引入JavaScript代码 7.2概述BOM与DOM(页面以外事物对象和当前页面对象) 7.3 BOM 7.3.1 window对象再探(所以JavaScript核心函数也都是window对象的方法) 7.3.2 window.navigator(浏览器信息,如window.navigator.userAgent) 7.3.3 Firebug的备忘功能 7.3.4 window.location(当前页面的URL信息,如设置href属性可实现页面跳转…
由于js基础差, 记性也不好,准备一边读书一边做记录,希望这样能加深一下记忆 /*   第一天     */ javascript 基本数据类型 js一共只有五种数据类型 Undefined,  Null, Boolean, Number, String 1.Undefined 变量只声明未赋值 变量的值为undefined var message alert(message) //undefined 声明未赋值 alert(name) //报错 未声明的变量 2.Null    Null是一个…