lab-development-imb/web/09/demos/js/04_functions.js

53 lines
1.1 KiB
JavaScript

// Normale Funktionsdeklaration
function add(a, b) {
return a + b;
}
console.log("Normale Funktion:", add(2, 3));
// Anonyme Funktion
const multiply = function(x, y) {
return x * y;
};
console.log("Anonyme Funktion:", multiply(4, 5));
// Arrow Function
const subtract = (a, b) => a - b;
console.log("Arrow Function:", subtract(10, 3));
const square = x => x * x;
console.log("Quadrat:", square(6));
const greet = (name) => {
return "Hallo " + name;
};
console.log(greet("Hans"));
// Funktionen als Parameter (Callbacks)
function doMath(a, b, operation) {
return operation(a, b);
}
// Übergabe einer anonymen Funktion
console.log("Callback anonym:", doMath(3, 4, function(x, y) {
return x + y;
}));
// Übergabe einer Arrow Function
console.log("Callback arrow:", doMath(3, 4, (x, y) => x * y));
// Higher-Order Functions mit Arrays (map)
let zahlen = [1, 2, 3, 4, 5];
// Mit anonymer Funktion
let verdoppelt = zahlen.map(function(n) {
return n * 2;
});
console.log("Verdoppelt (anonym):", verdoppelt);
// Mit Arrow Function
let verdoppeltArrow = zahlen.map(n => n * 2);
console.log("Verdoppelt (arrow):", verdoppeltArrow);