
呢篇文章講嘅係
編程上用嘅技術。假如你想揾嘅係
數學概念,請睇「
函數」。
子程式(英文:function,粵音:fang1 seon4[1]),又叫子程序,亦有叫函數,喺編程上係指大型程式當中特定嘅一柞程式碼,由一句或者多句陳述式組成,專門完成某項工作,而且獨立於子程式外嘅陳述式。通常用嚟教個程式做一啲要重複做若干次嘅工作。
例如係以下呢段虛擬碼,就會令個程式行子程式 a 三次,等個程式員唔使將子程式 a 段碼寫三次[2]:
子程式a...喺依道講好個子程式做乜...行子程式a行子程式a行子程式a
噉做除咗慳位,第時想更改源碼嗰時亦會方便啲:假如編程員將同一段碼寫三次,將來想改嘅時候就要逐段逐段改,改三次;用咗子程式,就只係需要改個子程式入便嘅碼,改一次。
以下係用JavaScript 展示子程式嘅示範:
letglobalVar="我係 Global";functionFangSeon(){letlocalVar="我係 Local";console.log(globalVar);// 成功:讀到全域變數console.log(localVar);// 成功:讀到局部變數}FangSeon();console.log(globalVar);// 成功console.log(localVar);// 呢行會引致 error,因為喺呢度 localVar 係唔存在嘅。最後嗰行會引致錯誤,係因為喺 JavaScript 嘅子程序之中用let 嚟設定變數,個變數會自動設成以嗰個子程序為作用域,由於localVar 係喺FangSeon 呢個子程式入便設定嘅,佢喺個子程式以外嘅地方唔存在,喺個子程式以外嘅地方想用佢,就會出錯[3]。
寫程式嗰陣用子程式嚟處理一啲要做好多次嘅工作,有助達致模塊化。