1
1
# 程式碼結構
2
2
3
- 我們該知道的第一件事是建立程式區塊
3
+ 我們該知道的第一件事是建立程式碼區塊
4
4
5
5
## 語句 (Statements)
6
6
7
7
語句是執行操作的語法結構與命令。
8
8
9
9
我們已經看過 ` alert(Hello, world!) ` 這個用來顯示 "Hello, world!" 訊息的語句。
10
10
11
- 我們可以在程式中撰寫任何數量的語句 ,用分號加以區隔。
11
+ 我們可以在程式碼中撰寫任何數量的語句 ,用分號加以區隔。
12
12
13
13
例如,在這裡我們把 "Hello World" 分為兩段:
14
14
15
15
``` js run no-beautify
16
16
alert (' Hello' ); alert (' World' );
17
17
```
18
18
19
- 語句通常寫在不同行內使程式更為易讀 :
19
+ 語句通常寫在不同行內使程式碼更為易讀 :
20
20
21
21
``` js run no-beautify
22
22
alert (' Hello' );
@@ -46,30 +46,30 @@ alert(3 +
46
46
+ 2 );
47
47
```
48
48
49
- 此程式輸出 ` 6 ` ,因為 JavaScript 沒有在內插入分號。直觀上,當某行程式以 ` "+" ` 結束時,它是個 "不完整的表達式 (incomplete expression)" 而不需要分號,如此一來這個例子才會以我們所想像的方式運作。
49
+ 此程式碼輸出 ` 6 ` ,因為 JavaScript 沒有在內插入分號。直觀上,當某行程式以 ` "+" ` 結束時,它是個 "不完整的表達式 (incomplete expression)" 而不需要分號,如此一來這個例子才會以我們所想像的方式運作。
50
50
51
51
** 但有些情況下 JavaScript 對於分號是否真的被需要會假設 "失敗"**
52
52
53
53
這些情況下的錯誤很難被找到且修正。
54
54
55
55
```` smart header="錯誤的例子"
56
- 如果你想看個這種錯誤的例子,來看這段程式 :
56
+ 如果你想看個這種錯誤的例子,來看這段程式碼 :
57
57
58
58
```js run
59
59
[1, 2].forEach(alert)
60
60
```
61
61
62
- 先不用思考方括號 `[]` 跟 `forEach` 的意義,我們晚點會介紹。現在只要記得這份程式的執行結果 :先顯示 `1` 接著是 `2`。
62
+ 先不用思考方括號 `[]` 跟 `forEach` 的意義,我們晚點會介紹。現在只要記得這段程式碼的執行結果 :先顯示 `1` 接著是 `2`。
63
63
64
- 現在來加入一個 `alert` 在這段程式前且 `不要` 以分號做結。
64
+ 現在來加入一個 `alert` 在這段程式碼之前且 *不要* 以分號做結。
65
65
66
66
```js run no-beautify
67
67
alert("There will be an error")
68
68
69
69
[1, 2].forEach(alert)
70
70
```
71
71
72
- 若我們執行這段程式 ,只有第一個 `alert` 會被顯示出來並有錯誤產生!
72
+ 若我們執行這段程式碼 ,只有第一個 `alert` 會被顯示出來並有錯誤產生!
73
73
74
74
但若我們在 `alert` 之後加入分號,一切又恢復正常:
75
75
```js run
@@ -82,7 +82,7 @@ alert("All fine now");
82
82
83
83
在沒有分號時會有錯誤,是因為 JavaScript 不假設方括號 `[...]` 之前要有分號。
84
84
85
- 因為分號沒有被自動插入,所以第一個例子內的程式被視為單獨一行語句 。這是引擎是怎麼看它的樣子:
85
+ 因為分號沒有被自動插入,所以第一個例子內的程式碼被視為單獨一行語句 。這是引擎是怎麼看它的樣子:
86
86
87
87
```js run no-beautify
88
88
alert("There will be an error")[1, 2].forEach(alert)
@@ -95,7 +95,7 @@ alert("There will be an error")[1, 2].forEach(alert)
95
95
96
96
## 註解
97
97
98
- 程式會隨著時間變得越來越複雜 ,有其必要加入 * 註解* 來解釋程式在做什麼且為什麼這麼做。
98
+ 程式碼會隨著時間變得越來越複雜 ,有其必要加入 * 註解* 來解釋程式在做什麼且為什麼這麼做。
99
99
100
100
註解可以加在腳本內任意位置,這不影響腳本運行因為引擎會直接忽略它們。
101
101
@@ -123,19 +123,19 @@ alert('Hello');
123
123
alert (' World' );
124
124
```
125
125
126
- 因為註解中的內容會被忽略,所以我們若放程式在 <code >/* ; ... * ; /</code > 之內將不會被執行。
126
+ 因為註解中的內容會被忽略,所以我們若放程式碼在 <code >/* ; ... * ; /</code > 之內將不會被執行。
127
127
128
128
偶爾需要暫時把一段程式拿掉時很有用:
129
129
130
130
``` js run
131
- /* 註解掉程式
131
+ /* 註解掉程式碼
132
132
alert('Hello');
133
133
*/
134
134
alert (' World' );
135
135
```
136
136
137
137
``` smart header="用熱鍵!"
138
- 大多數編輯器中,可以按下 `key:Ctrl+/` 這個熱鍵來註解掉單行程式 ,而 `key:Ctrl+Shift+/` 可以註解多行 (選取一段程式碼後按下熱鍵)。Mac 則使用 `key:Cmd` 取代 `key:Ctrl`。
138
+ 大多數編輯器中,可以按下 `key:Ctrl+/` 這個熱鍵來註解掉單行程式碼 ,而 `key:Ctrl+Shift+/` 可以註解多行 (選取一段程式碼後按下熱鍵)。Mac 則使用 `key:Cmd` 取代 `key:Ctrl`。
139
139
```
140
140
141
141
```` warn header="不支援巢狀註解!"
@@ -151,9 +151,9 @@ alert( 'World' );
151
151
```
152
152
````
153
153
154
- 不要猶豫,請開始註解你的代碼 。
154
+ 請別猶豫快點開始註解你的程式碼 。
155
155
156
- 註解雖會增加整個程式碼數量 ,但那根本不是問題。有許多工具可以在程式推上正式伺服器前先最小化你的程式碼 ,它們會移除註解所以不會出現在運行的腳本上。因此,註解對於正式版來說根本沒負面影響。
156
+ 註解雖會增加整體程式碼數量 ,但那根本不是問題。有許多工具可以在推上正式伺服器前先最小化你的程式碼 ,它們會移除註解所以不會出現在運行的腳本上。因此,註解對於正式版來說根本沒負面影響。
157
157
158
158
本教程之後有個章節 < info:code-quality > 將解釋如何寫出更好的註解。
159
159
0 commit comments