代码改变世界

随笔档案-2013年09月

js设计模式--策略模式

2013-09-22 12:11 by 明朝, 338 阅读, 收藏,
摘要: 策略模式:定义了一系列的算法,把他们封装起来,是它们之间可以互相替换,此模式不会影响到使用算法的客户。回忆下jquery里的animate方法:$( div ).animate( {"left: 200px"}, 1000, 'linear' ); //匀速运动$( div ).animate( {"left: 200px"}, 1000, 'cubic' ); //三次方的缓动这2句代码都是让div在1000ms内往右移动200个像素. linear(匀速)和cubic(三次方缓动)就是一种策略模式的封装。一般用在检验表 阅读全文

js设计模式--迭代器模式

2013-09-17 16:57 by 明朝, 339 阅读, 收藏,
摘要: 迭代器模式:迭代器模式提供一种方法顺序访问一个聚合对象中各个元素,而又不需要暴露该方法中的内部表示。js中我们经常会封装一个each函数用来实现迭代器。理解的意思:提供一个方法,去把对象的每一项按照一定的方法,访问各个元素。上代码:var agg = ((function(){ var index = 0, arr = [1,2,3,4,5,6], length = arr.length; return { next:function(){ //向下进行 var ele; ... 阅读全文

面试题自我解析

2013-09-17 15:23 by 明朝, 227 阅读, 收藏,
摘要: 面试题: var foo=1; function Foo() { alert(foo); var foo=2; alert(this.foo); this.foo=3; } var m1=Foo(); var m2=new Foo(); console.log(m1); console.log(m2);这个执行分别是undefined,1,undefined,undefined;为什么呢?当执行到这句:var m1=Foo();函数已经执行,相当于下面这种形式: function Foo() { var foo; //预解析 alert(foo)... 阅读全文

js设计模式--工厂模式

2013-09-16 19:10 by 明朝, 286 阅读, 收藏,
摘要: 工厂模式:工厂模式的目的是为了创建对象,它经常是在类和类的方法中实现。简单的工厂模式是由一个方法来决定到底要创建哪类的实例,这些实例经常拥有相同的接口,这种模式在所实例化的类型在编译期并不确定,而是在执行期决定的情况。 比如说,你有一家加工厂,生产各类牛奶:三氯氰胺奶粉,酸奶,变质奶,。。等等。当有客户跟你签约生产某种奶粉的时候,你便让工厂生产对应的奶。但如果要求生产牛肉,那肯定没有这个功能。。。 具体上代码:var Car = (function () { var Car = function (model, year, miles) { this.model = mod... 阅读全文

js设计模式--单体模式

2013-09-16 15:48 by 明朝, 254 阅读, 收藏,
摘要: GOF里的23种设计模式, 也是在软件开发中早就存在并反复使用的模式. 如果程序员没有明确意识到他使用过某些模式, 那么下次他也许会错过更合适的设计 (这段话来自《松本行弘的程序世界》).单体模式: 单体(Singleton)模式的思想在于保证一个特定类仅有一个实例。当在第二次使用同一个类创建新对象的时候,和第一次创建对象完全相同对象。 当使用new语法通过构造函数来创建对象,仅仅获得的是指向完全相同的对象的新指针: 例:function uniFn(){};var uni1 = new uniFn();var uni2 = new uniFn();uni1.constructor ==... 阅读全文

Python学习一:Python简介

2013-09-13 00:33 by 明朝, 365 阅读, 收藏,
摘要: Python简介: Python是目前广泛使用的一门动态语言,类似Java,源代码必须首先由编译器转换成字节码(byte code),然后再由解释器来执行字节码。与Java不同的是,Python的编译器和解释器都是一个程序。因此,源代码也可以直接交给这个编译器/解释器来执行。 使用Python编写程序,你不需要预先声明好变量的类型,因为Python中变量的类型是动态确定的,即动态绑定。 Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程。Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使得它在大多数平台上的许多领域都... 阅读全文

Angularjs学习笔记《一》

2013-09-12 18:16 by 明朝, 330 阅读, 收藏,
摘要: 开始慢慢的学习新的框架,Angularjs,其中原理不知深浅,但有例子练习,慢慢熟知。看的英文文档一点点翻译学习。 第一个例子,写一个增加,选中,删除的例子, 首先要引进所用的框架源码,这样引进,下面的例子用到了underscorejs: 上html代码: 1 2 3 4 共有多少项:{{getLen()}} 5 6 7 {{el.value}} 8 9 10 11 12 add 13 14 remove15 16 ad... 阅读全文

第一次写博客

2013-09-09 17:32 by 明朝, 165 阅读, 收藏,
摘要: 第一次写博客,谢谢大家!很长时间想自己写点东西来证实自己是否是真的懂了所学习的知识,一直处于浑浑噩噩状态,憋不出来一句话。现在慢慢来吧,等到涅槃重生,也许会庆幸写点东西是多么必须的。开始吧,慢慢积累!也希望大家以后多多指点。 阅读全文