Alternative to JavaScript’s switch statement with a functional twist
Based on Alternative to JavaScript’s switch statement with a functional twist
NPM: @el3um4s/match
To use the package in a project:
npm i @el3um4s/match
and then in a file:
import match from "@el3um4s/match";
const handleShape = (shape, w) => area(shape,w);
function area (type = "Circle", width = 2) {
return match(type)
.on(type => type.toLowerCase() === "circle", () => {
return Math.PI * (width / 2) ** 2;
})
.on(type => type.toLowerCase() === "square", () => width ** 2)
.otherwise(() => 0);
};
handleShape("Square", 3);