function

关于 JavaScript 闭包的简单例子

JavaScript 闭包 于控制台中运行如下例子: 无闭包: var x = []; for (var i = 0; i 闭包: var y = []; function doSetTimeout(i) { setTimeout(function () { y[i] = i; }, 1000); } for (var i = 0; i 简写: var z = []; fo

谈谈JS设计模式和应用场景一(单例模式)

什么是单例模式单例模式是单例模式,也叫单子模式,是一种常用的软件设计模式。 在应用这个模式时,单例对象的类必须保证只有一个实例存在。 许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为。。(来源于维基百科)1.创建单例模式,案例1:其实就是创建个对象,将我们的对象看做一个人var person ={height:1,name:'wy',callbac

JavaScript中的数据类型及其检测

JavaScript中的数据类型及其检测1. 数据类型1.1 基本类型NumberStringBooleanNullUndefinedSymbol1.2 引用类型ObjectArrayFunctionRegExpDate2. 类型检测2.1 typeofvar s = 'Nicholas';var b = true;var i = 22;var u;var n = null

算法笔记(JavaScript版)——优先队列

堆的算法 优先队列是一种抽象数据类型,最重要的操作是删除最大元素和插入元素。 用长度为N+1的数组pq[]来表示一个大小为N的堆,堆元素放在pq[1]至pq[N]中,不使用pq[0]。 function MaxPQ(){var pq = [],n = 0;this.show = function(){console.log(pq);}this.insert = functi

matlab学习1

1、建立基本函数关系式 function f=fun(x1,x2) f=x1^2+x2^2; end 2、控制系统循环for(应用:计算排列) 比如计算xn=n^3+1,n从1到10 function xn=fun(n) for n=1:1:10nxn =n^3+1 end end 3、循环while(应用:计算级数) 请输入代码 4、条件if-else if-end 请输

模块管理的简单实现

模块管理的简单实现方式Keep It Simple,StupidQ&A1. 为什么会有这个东西?方便组织你的代码,提高项目的可维护性。一个项目的可维护性高不高,也体现一个程序员的水平,在如今越来越复杂的前端项目,这一点尤为重要。2. 为什么不用requirejs,seajs等它们功能强大,但是文件体积是个问题,此外还有就是业务有时候可能没那么复杂,正如开头所说的:keep

JavaScript设计模式----单例模式

声明:这个系列为阅读《JavaScript设计模式与开发实践》 ----曾探@著一书的读书笔记1.单例模式的特点和定义保证一个类仅有一个实例,并且提供一个访问它的全局访问点。2.传统面向对象语言的单例模式2.1传统语言描述的单例模式JavaScript实现var Singleton = function(name) {this.name = name;this.instan

JavaScript设计模式----装饰者模式

装饰者模式的定义:装饰者(decorator)模式能够在不改变对象自身的基础上,在程序运行期间给对像动态的添加职责。与继承相比,装饰者是一种更轻便灵活的做法。装饰者模式的特点:可以动态的给某个对象添加额外的职责,而不会影响从这个类中派生的其它对象;继承的一些缺点:继承会导致超类和子类之间存在强耦合性,当超类改变时,子类也会随之改变;超类的内部细节对于子类是可见的,继承常常被

Node.js 深度体验

Node.js模块系统 模块是Node.js 应用程序的基本组成部分,文件和模块是一一对应的 node.js //代码 require('./love') 引入了当前目录下的love.js文件 var love = require('./love');love.confession(); love.reject();love.js //代码 require('./love'

Promise 的三种常用方法。

前言看到项目里不少人用了Promise 的库类,比如 bluebird、q 、jQuery.Deffered 等 polyfill promise 方式,使用的时候翻看长长的文档,真心累觉不爱。es5 发展到现在,node 在0.12版本就已经支持了promise, 在客户端,大部分浏览器也支持了Promise, 如果要兼容低版本的浏览器,可以加上es5-shim等 po