8000 correct some bug · codebuffer/idiomatic.js@b45b267 · GitHub
[go: up one dir, main page]

Skip to content

Commit b45b267

Browse files
committed
correct some bug
1 parent d355433 commit b45b267

File tree

1 file changed

+47
-49
lines changed

1 file changed

+47
-49
lines changed

translations/zh_CN/readme.md

Lines changed: 47 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,12 @@
3030
### 我并不想强制别人在其代码或项目中使用我个人所偏好的代码风格;如果已经存在一个通用编码规范,它必须受到尊崇。
3131

3232

33-
> ### "对风格的挑刺毫无无意义可言。他们必须是指导原则,且你必须遵循。"
33+
> ### "对风格的挑刺毫无无意义可言。它们必须是指导原则,且你必须遵循。"
3434
>_Rebecca_ _Murphey_
3535
3636
 
3737

38-
> ### "成为一个优秀的成功项目管理者的一个条件是明白,按自己的偏好风格写代码是非常不好的做法。如果成千上万的人都在使用你的代码,那么请尽可能通俗易懂地写出你的代码,而非在规范之下自作聪明地使用自己偏好的风格。"
38+
> ### "成为一个优秀的成功项目管理者的一个条件是,明白按自己的偏好风格写代码是非常不好的做法。如果成千上万的人都在使用你的代码,那么请尽可能通俗易懂地写出你的代码,而非在规范之下自作聪明地使用自己偏好的风格。"
3939
>_Idan_ _Gazit_
4040
4141
## 翻译版本
@@ -53,7 +53,7 @@
5353

5454
## 重要,非常通用资源:
5555

56-
### 代码质量工具资源和文献
56+
### 代码质量工具资源和文献
5757

5858
* [JavaScript Plugin](http://docs.codehaus.org/display/SONAR/JavaScript+Plugin) for [Sonar](http://www.sonarsource.org/)
5959
* [jsPerf](http://jsperf.com/)
@@ -68,7 +68,7 @@
6868
### [ECMAScript 5.1 注解版](http://es5.github.com/)
6969
### [EcmaScript 语言规范, 5.1 版](http://ecma-international.org/ecma-262/5.1/)
7070

71-
如下列文档的现实是:1)不完全版,2)*必读*。我并不全(不总是,always agree)赞同下列所有作者所写的风格,但有一点可以确定的是:他们具备一致性。除此之外,他们还都是这门语言的权威人士。
71+
下列文档的现实是:1)不完全版,2)*必读*。我并不全(不总是,always agree)赞同下列所有作者所写的风格,但有一点可以确定的是:他们具备一致性。除此之外,他们还都是这门语言的权威人士。
7272

7373
* [Baseline For Front End Developers](http://rmurphey.com/blog/2012/04/12/a-baseline-for-front-end-developers/)
7474
* [Eloquent JavaScript](http://eloquentjavascript.net/)
@@ -85,7 +85,7 @@
8585

8686
### 测试工具
8787

88-
项目 _必须_ 包括某此类型的单元、引用、实现或者功能性测试。使用代码示例并不足以称为“测试”。下面是一系列测试框架,他们谁都不是谁的更好替代品(which are endorsed more than the other)。
88+
项目 _必须_ 包括某此类型的单元、引用、实现或者功能性测试。使用代码示例并不足以称为“测试”。下面是一系列测试框架,他们只代表自己(谁都不是谁的更好替代品,which are endorsed more than the other)。
8989

9090
* [QUnit](http://github.com/jquery/qunit)
9191
* [Jasmine](https://github.com/pivotal/jasmine)
@@ -115,20 +115,20 @@
115115

116116
下面的章节描述的是一个 _合理_ 的现代 JavaScript 开发风格指南,并非硬性规定。其想送出的核心理念是*高度统一的代码风格*(the law of code style consistency)。你为项目所择风格都应为最高准则。作为一个描述放置于你的项目中,并链接到这个文档作为代码风格一致性、可读性和可维护性的保证。
117117

118-
## Idiomatic Style Manifesto
118+
## Idiomatic 风格宣言
119119

120120
1. <a name="whitespace">空白</a>
121121
- 永远都不要混用空格和Tab。
122-
- 开始一个项目,在写代码之前,选择软缩进(空格)或者 Tab(作为缩进方式),以将其作为**最高准则**
123-
- 为了可读, 我总是推荐在你的编辑中中设计2个字母的缩进 &mdash; 这等同于两个空格或者两个空格替代一个 Tab。
122+
- 开始一个项目,在写代码之前,选择软缩进(空格)或者 Tab(作为缩进方式),并将其作为**最高准则**
123+
- 为了可读, 我总是推荐在你的编辑中设计2个字母的缩进 &mdash; 这等同于两个空格或者两个空格替代一个 Tab。
124124
- 如果你的编辑器支持,请总是打开 “显示不可见字符” 这个设置。好处是:
125125
- 保证一致性
126-
- 消灭行末的空格
127-
- 消灭空行的空格
126+
- 去掉行末的空格
127+
- 去掉空行的空格
128128
- 提交和对比更具可读性
129129

130130

131-
2. <a name="spacing">Beautiful Syntax</a>
131+
2. <a name="spacing">美化语法</a>
132132

133133
A. 小括号, 花括号, 换行
134134

@@ -151,15 +151,15 @@
151151
// 使用空格来提升可读性
152152

153153
if ( condition ) {
154-
// statements
154+
// 语句
155155
}
156156

157157
while ( condition ) {
158-
// statements
158+
// 语句
159159
}
160160

161161
for ( var i = 0; i < 100; i++ ) {
162-
// statements
162+
// 语句
163163
}
164164

165165
// 更好的做法:
@@ -168,7 +168,7 @@
168168
length = 100;
169169

170170
for ( i = 0; i < length; i++ ) {
171-
// statements
171+
// 语句
172172
}
173173

174174
// 或者...
@@ -177,20 +177,20 @@
177177
length = 100;
178178

179179
for ( ; i < length; i++ ) {
180-
// statements
180+
// 语句
181181
}
182182

183183
var prop;
184184

185185
for ( prop in object ) {
186-
// statements
186+
// 语句
187187
}
188188

189189

190190
if ( true ) {
191-
// statements
191+
// 语句
192192
} else {
193-
// statements
193+
// 语句
194194
}
195195
```
196196

@@ -286,11 +286,11 @@
286286
// 2.B.2.3
287287
// 函数表达式
288288
var square = function( number ) {
289-
// 返回有价值的、相关的东西
289+
// 返回有价值的、相关的内容
290290
return number * number;
291291
};
292292
293-
// 带标记符的函数表达式
293+
// 带标识符的函数表达式
294294
// 这种首选形式有附加的功能让其可以调用自身
295295
// 并且在堆栈中有标识符
296296
var factorial = function factorial( number ) {
@@ -357,28 +357,28 @@
357357
// 2.D.1.1
358358
359359
if (condition) {
360-
// statements
360+
// 语句
361361
}
362362
363363
while (condition) {
364-
// statements
364+
// 语句
365365
}
366366
367367
for (var i = 0; i < 100; i++) {
368-
// statements
368+
// 语句
369369
}
370370
371371
if (true) {
372-
// statements
372+
// 语句
373373
} else {
374-
// statements
374+
// 语句
375375
}
376376
377377
```
378378

379379
E. 引号
380380

381-
无论你选择单引号还是双引号都无所谓,在 JavaScript 中它们在解析上没有区别. **绝对需要**强制的是一致性。 **永远不要在同一个项目中混用两种引号,选择一种,并保持一致**
381+
无论你选择单引号还是双引号都无所谓,在 JavaScript 中它们在解析上没有区别**绝对需要**强制的是一致性。 **永远不要在同一个项目中混用两种引号,选择一种,并保持一致**
382382

383383
F. 行末和空行
384384

@@ -437,7 +437,7 @@
437437
object.hasOwnProperty( prop )
438438
"prop" in object
439439

440-
B. 类型转换(强制类型,Coerced Types)
440+
B. 转换类型(强制类型,Coerced Types)
441441

442442
考虑下面这个的含义...
443443

@@ -461,8 +461,7 @@
461461
// "number"
462462
...
463463
464-
// 在后续的代码中,你需要更新 `foo`
465-
// 赋予在 input 元素中得到的新值
464+
// 在后续的代码中,你需要更新 `foo`,赋予在 input 元素中得到的新值
466465
467466
foo = document.getElementById("foo-input").value;
468467
@@ -585,7 +584,7 @@
585584
586585
// 值得注意的是上述都是 "不必要的聪明"
587586
// 采用明确的方案来比较返回的值
588-
// indexOf, like:
587+
// 如 indexOf:
589588
590589
if ( array.indexOf( "a" ) >= 0 ) {
591590
// ...
@@ -611,7 +610,7 @@
611610
// 结果都是 2
612611
613612
614-
// 时间牢记心底, 负值将被区别对待...
613+
// 时刻牢记心底, 负值将被区别对待...
615614
616615
var neg = -2.5;
617616
@@ -693,15 +692,15 @@
693692
// 相对于使用这个:
694693
if ( foo === null || foo === undefined ) ...
695694
696-
// ...享受 == 类型强制转换,像这样:
695+
// ...享受 == 类型强制转换的好处,像这样:
697696
if ( foo == null ) ...
698697
699698
// 谨记,使用 == 将会令 `null` 匹配 `null``undefined`
700699
// 但不是 `false`,"" 或者 0
701700
null == undefined
702701
703702
```
704-
总是判断最好、最准备的值,上述是指南而非教条。
703+
总是判断最好、最精确的值,上述是指南而非教条。
705704

706705
```javascript
707706
@@ -710,12 +709,12 @@
710709
711710
// 首次 `===``==` 次之 (除非需要松散类型的对比)
712711
713-
// === 总不做类型转换,这意味着:
712+
// `===` 总不做类型转换,这意味着:
714713
715714
"1" === 1;
716715
// false
717716
718-
// == 会转换类型,这意味着:
717+
// `==` 会转换类型,这意味着:
719718
720719
"1" == 1;
721720
// true
@@ -820,7 +819,6 @@
820819
6. <a name="naming">命名</a>
821820

822821

823-
824822
A. 你并不是一个人肉 编译器/压缩器,所以尝试去变身为其一。
825823

826824
下面的代码是一个极糟命名的典范:
@@ -880,7 +878,7 @@
880878
// 6.A.3.3
881879
// 命名函数、对象、实例,等
882880

883-
驼峰; function 和 var 声明
881+
camlCase; function 和 var 声明
884882

885883

886884
// 6.A.3.4
@@ -909,7 +907,7 @@
909907

910908
B. 面对 `this`
911909

912-
除使用众所周知的 `call` 和 `apply` 外,总是优先选择 `.bind( this )` 或者一个功能物价物,创建 `BoundFunction` 声明供后续调用。仅当没有更好的选择时才使用别名
910+
除使用众所周知的 `call` 和 `apply` 外,总是优先选择 `.bind( this )` 或者一个功能上等价于它的。创建 `BoundFunction` 声明供后续调用,当没有更好的选择时才使用别名
913911

914912
```javascript
915913

@@ -1030,7 +1028,7 @@
10301028

10311029
C. 使用 `thisArg`
10321030

1033-
好几个 ES 5.1 原型中的方法都内置了一个特殊的 `thisArg` 标记,尽可能多地使用它
1031+
好几个 ES 5.1 中的原型的方法都内置了一个特殊的 `thisArg` 标记,尽可能多地使用它
10341032

10351033
```javascript
10361034
@@ -1060,9 +1058,9 @@
10601058

10611059
7. <a name="misc">Misc</a>
10621060

1063-
这个部分将要说明的想法和理念都并非教条。相反更鼓励对现存实践保持好奇,以尝试提供完全一般 JavaScript 编程任务的更好方案。
1061+
这个部分将要说明的想法和理念都并非教条。相反更鼓励对现存实践保持好奇,以尝试提供完成一般 JavaScript 编程任务的更好方案。
10641062

1065-
A. 避免使用 `switch`,现代方法跟踪(method tracing)将会把把带有 switch 表达式的函数列为黑名单。
1063+
A. 避免使用 `switch`,现代方法跟踪(method tracing)将会把带有 switch 表达式的函数列为黑名单。
10661064

10671065
似乎在最新版本的 Firefox 和 Chrome 都对 `switch` 语句有重大改进。http://jsperf.com/switch-vs-object-literal-vs-module
10681066

@@ -1095,18 +1093,18 @@
10951093
// 返回值仅作说明用
10961094
cases = {
10971095
alpha: function() {
1098-
// statements
1099-
// a return
1096+
// 语句
1097+
// 一个返回值
11001098
return [ "Alpha", arguments.length ];
11011099
},
11021100
beta: function() {
1103-
// statements
1104-
// a return
1101+
// 语句
1102+
// 一个返回值
11051103
return [ "Beta", arguments.length ];
11061104
},
11071105
_default: function() {
1108-
// statements
1109-
// a return
1106+
// 语句
1107+
// 一个返回值
11101108
return [ "Default", arguments.length ];
11111109
}
11121110
};
@@ -1219,7 +1217,7 @@
12191217
* 单行注释放于代码上方为首选
12201218
* 多行也可以
12211219
* 行末注释应被避免!
1222-
* JSDoc 的方式也不划,但需要比较多的时间
1220+
* JSDoc 的方式也不错,但需要比较多的时间
12231221

12241222

12251223
10. <a name="language">单用一门语言</a>

0 commit comments

Comments
 (0)
0