Kleine Sammlung was JavaScript so alles kann.
Funktion als return
function Samstag() {
return () => alert("Moin");
}
Samstag()();
function startHealthCheck() {
const id = setInterval( () => console.log("i'm alive", 200) );
return () => clearInterval(id);
}
const stopIt = startHealthCheck();
setTimeout(() => stopIt(), 3000);
Funktion als Parameter mit zusätzlichen Argumenten
function Sonntag(f) {
return (...args) => {
console.log("called", args);
let result = f(...args);
console.log("called", args, ", returned", result);
return result;
};
}
Sonntag(Math.min)(3, 2, 1)
Funktionen Zwischenspeichern
let Montag = () => {
console.log("Moin");
}
let MontagClone = Montag;
Montag = () => {
console.log("Hello");
MontagClone();
}
Montag();
Montag = MontagClone;
Montag();
rekursive Funktionen
function factorial(n) {
if (n == 0) {
return 1;
} else {
return factorial(n - 1) * n;
}
}
factorial(8)
Array Wandler
const Dienstag = (...nummern) => (nummern);
Dienstag(1,2,3);
[1,2,3]
Summe der Argumente multipliziert mit Argument
const Mittwoch = a => { return (...args) => { return a * args.reduce((b, c) => b + c) }};
Mittwoch(4)(10,15);
100
Rekursion mit abbruch Funktion
const a = b => {
return c => {
return (c(b)) ? a(b * b)(c) : b
}
};
Easymode
const func = function(number) {
return function(argFunc) {
if(argFunc(number)) {
return func(number * number)(argFunc);
} else {
return number;
}
}
};
func(5)(function(number){
return number < 50
});
625
Hardmode
const a = b => c => (c(b)) ? a(b * b)(c) : b;
a(5)(b => b < 50);
625
rekursive Iframes
function fuckUp(func){
var id = Math.random();
ifrm = document.createElement("IFRAME");
ifrm.setAttribute("src", window.location.href+"?"+id);
ifrm.style.width = 250+"px";
ifrm.style.height = 250+"px";
ifrm.id = id;
code = document.createElement("script");
code.innerHTML = "("+func.toString()+")("+func.toString()+");";
ifrm.addEventListener('load', () => {document.getElementById(id).contentDocument.body.appendChild(code)}, true);
document.body.appendChild(ifrm);
}
fuckUp(fuckUp);
Hast du noch ein lustiges Script das hier aufgeführt werden sollte? Kommentar bitte
Interessante Sammlung hast du da, da lernt man was bei. Danke!