JavaScript, function-as-object and the internet
The internet ™️ has caught up on an ad by FERCHAU, found — amongst others — somewhere within the depths of the Berlin subway.
Some devs cringe at the code used with the ad — turns out it can easily get de-mystified with JavaScript’s function-as-object style:
const careerStuck = () => {};
careerStuck.stop = () => {};
Opinions regarding semantics may differ:
if (careerStuck() === true) {
careerStuck.stop();
beSmart(); // 👀
}
Further reading
Martin Fowler on FunctionAsObject in an article from 2017. The pattern goes back to the last century when Eugene Wallingford coined the name “Function as Object” in his 1999 pattern language “Envoy”.