子程式
外表
(由子程序跳轉過嚟)
子程式(英文:function,粵音:fang1 seon4 [1]),又叫子程序,亦有叫函數,喺編程上係指大型程式當中特定嘅一柞程式碼,由一句或者多句陳述式組成,專門完成某項工作,而且獨立於子程式外嘅陳述式。通常用嚟教個程式做一啲要重複做若干次嘅工作。
概念
[編輯]例如係以下呢段虛擬碼,就會令個程式行子程式 a 三次,等個程式員唔使將子程式 a 段碼寫三次[2]:
子程式 a
... 喺依道講好個子程式做乜...
行子程式 a
行子程式 a
行子程式 a
噉做除咗慳位,第時想更改源碼嗰時亦會方便啲:假如編程員將同一段碼寫三次,將來想改嘅時候就要逐段逐段改,改三次;用咗子程式,就只係需要改個子程式入便嘅碼,改一次。
應用
[編輯]以下係用 JavaScript 展示子程式嘅示範:
let globalVar = "我係 Global";
function FangSeon() {
let localVar = "我係 Local";
console.log(globalVar); // 成功:讀到全域變數
console.log(localVar); // 成功:讀到局部變數
}
FangSeon();
console.log(globalVar); // 成功
console.log(localVar); // 呢行會引致 error,因為喺呢度 localVar 係唔存在嘅。
最後嗰行會引致錯誤,係因為喺 JavaScript 嘅子程序之中用 let 嚟設定變數,個變數會自動設成以嗰個子程序為作用域,由於 localVar 係喺 FangSeon 呢個子程式入便設定嘅,佢喺個子程式以外嘅地方唔存在,喺個子程式以外嘅地方想用佢,就會出錯[3]。
價值
[編輯]呢節要加長。 |
寫程式嗰陣用子程式嚟處理一啲要做好多次嘅工作,有助達致模塊化。
睇埋
[編輯]引述
[編輯]- ↑ English Loanwords in Hong Kong Cantonese,佢哋呢度有收錄,打 function 可以搵到。
- ↑ Wheeler, D. J. (1952). "The use of sub-routines in programmes". Proceedings of the 1952 ACM national meeting (Pittsburgh) on - ACM '52.
- ↑ Javascript Interview Q/A Part 3: Var, Let, and Const., Medium.