From 1a874364a8c7ca10e4c2d2bb7c1f0171f0f99420 Mon Sep 17 00:00:00 2001 From: Svenja Cao Date: Fri, 11 Jul 2014 01:50:16 -0700 Subject: [PATCH 1/5] Fix a typo. --- chapter1.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter1.markdown b/chapter1.markdown index e916ea7..c0a253c 100644 --- a/chapter1.markdown +++ b/chapter1.markdown @@ -42,7 +42,7 @@ JavaScript是一门面向对象的编程语言,这一点对于那些对JavaScr 在任何语言中,最简单的操作莫过于定义变量。在JavaScript中定义变量的时候,其实也在和对象打交道。首先,变量自动成为一个内置对象的属性(这个内置对象被称作“活动对象”,如果是全局变量的话,就变为全局对象的属性)。其次,这个变量实际上也是“伪对象”,因为它有自己的属性(译注:原文使用了`attributes`,指内置的特性),用以表示变量是否可以被修改、删除或在`for-in`中枚举。这些特性并未在ECMAScript3中作规定,但ECMAScript5中提供了一组可以修改这些特性的方法。 -那么,到底什么是对象?对象能做这么多事情,那它们一定非常特别。实际上,对象是及其简单的。对象只是很多属性的集合,一个名值对的列表(在其他语言中可能被称作关联数组),这些属性也可以是函数(函数对象),这种函数我们称为“方法”。 +那么,到底什么是对象?对象能做这么多事情,那它们一定非常特别。实际上,对象是极其简单的。对象只是很多属性的集合,一个名值对的列表(在其他语言中可能被称作关联数组),这些属性也可以是函数(函数对象),这种函数我们称为“方法”。 关于对象,我们还需要了解,我们可以随时随地修改已经创建的对象(ECMAScript5中提供了可阻止这些修改的API)。得到一个对象后,你可以给他添加、删除或更新成员。如果你关心私有成员和访问控制,我们也会在本书中讲到相关的模式。 From 6101f6654314bb80fce3ad0166fa725eb0ab488d Mon Sep 17 00:00:00 2001 From: Svenja Cao Date: Mon, 14 Jul 2014 14:37:21 -0700 Subject: [PATCH 2/5] Update chapter2.markdown --- chapter2.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter2.markdown b/chapter2.markdown index 97c1acd..41dc594 100644 --- a/chapter2.markdown +++ b/chapter2.markdown @@ -781,7 +781,7 @@ YUIDoc的初衷是为YUI(Yahoo! User Interface)库生成文档,但其实 这里提供了在线的demo,请参照。 -这个例子中所有的应用作为一个模块(myapp)放在一个文件里(app.js),后续的章节会更详细的介绍模块,现在只需知道用可以用一个YUIDoc的标签来表示模块即可。 +这个例子中所有的应用作为一个模块(myapp)放在一个文件里(app.js),后续的章节会更详细的介绍模块,现在只需知道可以用一个YUIDoc的标签来表示模块即可。 图2-1 YUIDoc生成的文档 From e346df68110f7a4d1f9749a1f87833de31fc8ace Mon Sep 17 00:00:00 2001 From: TooBug Date: Mon, 25 Aug 2014 20:43:00 +0800 Subject: [PATCH 3/5] Update chapter7.markdown MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 错字修正 --- chapter7.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chapter7.markdown b/chapter7.markdown index 4e8d4c0..250df4d 100644 --- a/chapter7.markdown +++ b/chapter7.markdown @@ -1334,7 +1334,7 @@ HTML代码仅仅是一个链接列表: 在运行时通过从预先定义好的装饰器对象来给被装饰对象动态添加功能。 - 策略模式 - 保持接口一致的情况下选择最好的策略来完成特写类型的任务。 + 保持接口一致的情况下选择最好的策略来完成特定类型的任务。 - 外观模式 通过包装通用的(或者设计得很差的)方法来提供一个更方便的API。 From 42eb830c92cab36ecd66f89a5145e25f8f68de30 Mon Sep 17 00:00:00 2001 From: TooBug Date: Wed, 3 Dec 2014 09:15:37 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E9=94=99=E5=AD=97=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.markdown b/README.markdown index 40493e3..8e15051 100644 --- a/README.markdown +++ b/README.markdown @@ -7,7 +7,7 @@ - 作者:[Stoyan Stefanov](http://www.phpied.com/) - 翻译:[拔赤](http://jayli.github.com/)、[goddyzhao](http://goddyzhao.me)、[TooBug](http://www.toobug.net) -本书从 JavaScript 的实际使用场景出发,提炼了不少有价值的前端实用模式式。模式的探索、创新,将永远是程序员自我提升的一条修炼之道,值得一读。 +本书从 JavaScript 的实际使用场景出发,提炼了不少有价值的前端实用模式。模式的探索、创新,将永远是程序员自我提升的一条修炼之道,值得一读。 # 目录 From 74ac559b4e00c05d0dab1be1cec7dd152d0b24d2 Mon Sep 17 00:00:00 2001 From: TooBug Date: Mon, 16 Mar 2015 09:15:38 +0800 Subject: [PATCH 5/5] typo --- chapter4.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/chapter4.markdown b/chapter4.markdown index 16ecfba..5300699 100644 --- a/chapter4.markdown +++ b/chapter4.markdown @@ -17,7 +17,7 @@ JavaScript的函数具有两个主要特性,正是这两个特性让它们与 - 可以将函数作为参数传入另一个函数,也可以被当作返回值返回 - 函数可以包含自己的属性和方法 -有可能会有这样的情况:一个函数A,它也是一个对象,拥有属性和方法,其中某个属性是另一个函数B,B可以接受函数作为参数,假设这个函数参数为C,当执行B的时候,返回另一个函数D。乍一看这里有一大堆相互关联的函数,但当你开始习惯函数的许多用法时,你会惊叹原来函数是如此灵活、强大县且富有表现力。通常说来,一说到JavaScript的函数,我们首先认为它是一个对象,具有一个可以“执行”的特性,也就是说我们可以“调用”这个函数。 +有可能会有这样的情况:一个函数A,它也是一个对象,拥有属性和方法,其中某个属性是另一个函数B,B可以接受函数作为参数,假设这个函数参数为C,当执行B的时候,返回另一个函数D。乍一看这里有一大堆相互关联的函数,但当你开始习惯函数的许多用法时,你会惊叹原来函数是如此灵活、强大且富有表现力。通常说来,一说到JavaScript的函数,我们首先认为它是一个对象,具有一个可以“执行”的特性,也就是说我们可以“调用”这个函数。 我们通过`new Function()`构造函数来创建一个函数,这时可以明显看出函数是对象: @@ -1008,4 +1008,4 @@ JavaScript中的回调模式已经是我们的家常便饭了,比如,如果 利用函数的属性,使已经计算过的值不用再次计算 - 自定义函数 - 重写自身的函数体,使第二次及后续的调用做更少的工作 \ No newline at end of file + 重写自身的函数体,使第二次及后续的调用做更少的工作