Skip to content

Instantly share code, notes, and snippets.

View DanishSiddiq's full-sized avatar
🎯
Focusing

DanishSiddiq

🎯
Focusing
View GitHub Profile
@DanishSiddiq
DanishSiddiq / complicatedCode.js
Last active March 5, 2021 04:44
Complicated Code Structure
function calculateSomeFormula(param1, param2) {
if (param1) {
if (!isNaN(param1)) {
if (param2) {
if (!isNaN(param2)) {
return (param1 * 2) * (param2 * 3);
} else {
throw new Error('Param2 is not a number');
}
} else {
@DanishSiddiq
DanishSiddiq / earlyReturn.js
Last active March 5, 2021 04:49
Early Return Sample
function calculateSomeFormula(param1, param2) {
if (!param1) {
throw new Error('Param1 is not defined');
}
if (isNaN(param1)) {
throw new Error('Param1 is not a number');
}
if (!param2) {
@DanishSiddiq
DanishSiddiq / bouncerPattern.js
Last active March 5, 2021 04:51
Bouncer pattern explaining early return
function calculateSomeFormula(param1, param2) {
validateParams(param1, param2);
return (param1 * 2) * (param2 * 3);
}
// although return value is not used in our example but this method can also return value which can be used by the caller
function validateParams(param1, param2) {
if (!param1) {