Wissen Sie, wie viele Möglichkeiten es gibt, eine Funktion in JavaScript zu erstellen? Der folgende Artikel stellt Ihnen verschiedene Methoden zum Definieren von Funktionen in JavaScript vor. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.
1. Deklarationsfunktion
function sum(a, b) { return a + b; }
2. Ausdrucksfunktion
// 可以命名: (function sum(a, b) { return a + b; }); // 也可匿名 (AVOID): (function(a, b) { return a + b; }); // 也能分配给变量: const sum = function sum(a, b) { return a + b; })
4. Generatorfunktion
// 一般形式: (a, b) => { return a + b }; // 单参数,一行返回: name => name.split(' ') // 多参数,一行返回: (a, b) => a + b // 单参数,带函数体 name => { return name.split(' '); }
5. Asynchrone Funktion
function *sum(a, b) { yield a + b; }
6. Konstruktor (AVOID)
async function sum(a, b) { return await a + b; }
new Function(‘a’, ‘b’, ‘return a + b;’);
// 默认导出 export default function(a, b) { return a + b; }; // 命名导出 export function sum(a, b) { return a + b; };
// 一般形式: const object = { sum: function(a, b) { return a + b; }, }; // 简写: const object = { sum(a, b) { return a + b; }, };
11. Getter/Setter-Funktionen von Objekt-Dynamikeigenschaften12. Klassenmethodenfunktionen
const functionName = "sum"; const object = { [functionName]: function(a, b) { return a + b; }, };
// 一般形式: const object = { get answer { return 42; }, set answer(value) { /* 一些操作value的代码 */ }, }; // 使用 defineProperty const obj = {}; Object.defineProperty(obj, "answer", { get() { return 42; }, set(value) { /* 一些操作value的代码 */ }, });
const functionName = "answer"; const object = { get [functionName]() { return 42; }, set [functionName](value) { /* 一些操作value的代码 */ }, };
Verwandte kostenlose Lernempfehlungen:
JS-Video-Tutorial
Das obige ist der detaillierte Inhalt vonMehrere Möglichkeiten, Funktionen in JS zu definieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!