File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1313/site /ko
1414/site /ja
1515/site /es
16+ /site /hu
1617/site /zhtw
1718/site /it
1819/site /hu
Original file line number Diff line number Diff line change @@ -22,13 +22,13 @@ JavaScript 中每个函数内都能访问一个特别变量 `arguments`。这个
2222
2323###传递参数
2424
25- 下面将参数从一个函数传递到另一个函数,是推荐的做法 。
25+ 下面是将参数从一个函数传递到另一个函数的推荐做法 。
2626
2727 function foo() {
2828 bar.apply(null, arguments);
2929 }
3030 function bar(a, b, c) {
31- // do stuff here
31+ // 干活
3232 }
3333
3434另一个技巧是同时使用 ` call ` 和 ` apply ` ,创建一个快速的解绑定包装器。
@@ -39,7 +39,7 @@ JavaScript 中每个函数内都能访问一个特别变量 `arguments`。这个
3939 console.log(this, a, b, c);
4040 };
4141
42- // Create an unbound version of "method"
42+ // 创建一个解绑定的 "method"
4343 // 输入参数为: this, arg1, arg2...argN
4444 Foo.method = function() {
4545
@@ -77,8 +77,7 @@ JavaScript 中每个函数内都能访问一个特别变量 `arguments`。这个
7777
7878### 性能真相
7979
80- ` arguments ` 对象总会被创建,除了两个特殊情况 - 作为局部变量声明和作为形式参数。
81- 而不管它是否有被使用。
80+ 不管它是否有被使用,` arguments ` 对象总会被创建,除了两个特殊情况 - 作为局部变量声明和作为形式参数。
8281
8382` arguments ` 的 * getters* 和 * setters* 方法总会被创建;因此使用 ` arguments ` 对性能不会有什么影响。
8483除非是需要对 ` arguments ` 对象的属性进行多次访问。
Original file line number Diff line number Diff line change 5656
5757###避免引用错误
5858
59- 为了正确的获得循环序号,最好使用 [ 匿名包裹器 ] ( #function.scopes ) (** [ 译者注] [ 30 ] :** 其实就是我们通常说的自执行匿名函数)。
59+ 为了正确的获得循环序号,最好使用 [ 匿名包装器 ] ( #function.scopes ) (** [ 译者注] [ 30 ] :** 其实就是我们通常说的自执行匿名函数)。
6060
6161 for(var i = 0; i < 10; i++) {
6262 (function(e) {
7070
7171当传递给 ` setTimeout ` 的匿名函数执行时,它就拥有了对 ` e ` 的引用,而这个值是** 不会** 被循环改变的。
7272
73- 有另一个方法完成同样的工作; 那就是从匿名包装器中返回一个函数。这和上面的代码效果一样。
73+ 有另一个方法完成同样的工作, 那就是从匿名包装器中返回一个函数。这和上面的代码效果一样。
7474
7575 for(var i = 0; i < 10; i++) {
7676 setTimeout((function(e) {
Original file line number Diff line number Diff line change @@ -214,7 +214,7 @@ JavaScript 中的所有作用域,包括*全局作用域*,都有一个特别
214214推荐使用* 匿名包装器* (** [ 译者注] [ 30 ] :** 也就是自执行的匿名函数)来创建命名空间。这样不仅可以防止命名冲突,
215215而且有利于程序的模块化。
216216
217- 另外,使用全局变量被认为是** 不好的习惯** 。这样的代码倾向于产生错误和带来高的维护成本 。
217+ 另外,使用全局变量被认为是** 不好的习惯** 。这样的代码容易产生错误并且维护成本较高 。
218218
219219[ 1 ] : http://net.tutsplus.com/tutorials/javascript-ajax/quick-tip-javascript-hoisting-explained/
220220[ 30 ] : http://cnblogs.com/sanshi/
Original file line number Diff line number Diff line change @@ -86,7 +86,7 @@ JavaScript 有一套完全不同于其它语言的对 `this` 的处理机制。
8686
8787上例中,` test ` 就像一个普通的函数被调用;因此,函数内的 ` this ` 将不再被指向到 ` someObject ` 对象。
8888
89- 虽然 ` this ` 的晚绑定特性似乎并不友好,但是这确实 [ 基于原型继承] ( #object.prototype ) 赖以生存的土壤。
89+ 虽然 ` this ` 的晚绑定特性似乎并不友好,但这确实是 [ 基于原型继承] ( #object.prototype ) 赖以生存的土壤。
9090
9191 function Foo() {}
9292 Foo.prototype.method = function() {};
You can’t perform that action at this time.
0 commit comments