最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

一級函式 & 函式應用

XAMPP下载 admin 484浏览 0评论
 一級函式
在MDN的JavaScript的教學,一開始就說了,JavaScript是具有一級函式(First-class functions)的輕量級程式語言,函式相信大家都了解,那究竟甚麼是一級函式,它有什麼重要性?
在JavaScript中,除了基礎型別(Primitive Type)之外的型別都可以視為物件型別(Object Type),包括函式。
函式作為物件,意味著,函式能實現物件的功能,這個觀念非常特別,也非常重要。

有哪些功能?

當作一個值指派給變數。
let getValue = function () {}
作為陣列中的元素。
let ary = [];
ary.push(function () {})
當作物件的屬性值。
let obj = {
prop: function () {}
}
當作函式的回傳值。
function getValue() {
return function () {}
}
當作函式的引數。
function greeting(name) {
console.log(`Hello!${name}`);
}
function processUserInput(callbackfn) {
let name = ‘Mary’;
callbackfn(name);
}
processUserInput(greeting);
callback function有很多地方需要討論,之後會另開篇幅。

函式的應用
有程式設計基礎後,下一個議題就是學習如何使用函式,函式可以讓我們重複使用相同的邏輯,方面管理程式碼。
函式在JavaScript中占有無比重要的地位,我們必須得了解函式有哪些形式,才能在面對不同的情境來使用。

第一種最簡單,沒有參數與回傳值。
let x = 10;
let y = 20;
function getValue() {
let sum = x + y;
console.log(sum);
}
getValue(); //30
x與y皆為全域變數,sum為區域變數,這不是一個好的方法,這個範例只是單純做示範。

第二種,有參數沒有回傳值。
function getValue(x, y) {
let sum = x + y;
console.log(sum);
}
getValue(10, 20); //30
跟剛剛的例子比起來,這個好多了,所有變數皆為區域變數,當函式執行完,區域變數的生命週期也隨之消失,不會占用記憶體空間。

第三種,有參數有回傳值。
function getValue(x, y) {
return x + y;
}
let sum = getValue(10, 20);
console.log(sum);
這種方式很常用,我們常需要函式做完運算後,把結果傳給另一個變數,再接續處理。

第四種,沒有參數有回傳值。
let x = 10;
let y = 20;
function getValue() {
return x + y;
}
let sum = getValue(10, 20);
console.log(sum); //30
以上就是函式的各種形式,在我們了解更進階的函式觀念之前,應該要把基礎的應用學好才是正確的學習途徑。

转载请注明:XAMPP中文组官网 » 一級函式 & 函式應用

您必须 登录 才能发表评论!