重載函數

這堂課將介紹 JavaScript 的 Frameworks 與 libraries 常見的函式使用方法

首先我們建立一個函式並判斷傳入的參數來執行不同的行為

1
2
3
4
5
6
7
8
9
10
function greet(firstname, lastname, language) {
language = language || "en";

if (language === "en") console.log("Hello" + firstname + lastname);

if (language === "es") console.log("Hola" + firstname + lastname);
}

greet('John', 'Doe', 'en'); // Hello John Doe
greet('John', 'Doe', 'es'); // Hola John Doe

可以看到上方兩次函式的呼叫方式透過判斷最後一個參數來達到不同的行為,而我們也可以將不同的判斷包裝成不同的函式來呼叫原本的函式

1
2
3
4
5
6
7
8
9
function greetEngilsh(firstname, lastname) {
greet(firstname, lastname, 'en');
}
function greetSpanish(firstname, lastname) {
greet(firstname, lastname, 'es');
}

greetEnglish('John', 'Doe'); // Hello John Doe
greetSpanish('John', 'Doe'); // Hola John Doe

資料來源

Udemy-JavaScript: Understanding the Weird Parts