Today I Learned - Rocky Kev

TIL writing cleaner If statements

POSTED ON:

TAGS:

I probably write about this a lot.

This is from Clean Up Your Code by Removing ‘if-else’ Statements, and this is the best version I ever saw of this.

Using If statements

function action(ranking){
if(ranking == 'A'){
travel()
}
else if (ranking == 'B'){
shopping()
}
else if (ranking == 'C'){
watchTV()
}
else if (ranking == 'D') {
review()
}
}

Using Switch

function action(ranking){
switch(ranking){
case 'A':
travel()
break

case 'B':
shopping()
break
case 'C':
watchTV()
break

case 'D':
review()
break
}
}

Using Key values

let strategies = {
'A': travel,
'B': shopping,
'C': watchTV,
'D': review
}
function action(ranking){
let strategy = strategies[ranking]
strategy()
}


Related TILs

Tagged:

TIL what is npm Script

Despite their high usage they are not particularly well optimized and add about 400ms of overhead. In this article we were able to bring that down to ~22ms.

TIL fancy methods to transform Javascript Objects

You can use Object.entries(), Object.keys(), Object.fromEntries()...

TIL how to hide your JS code

ONE THING TO NOTE: Encrypting a script is stronger than obfuscation, both methods are still not adequate to protect secret content. Honestly, I don't think it's worth it on a production site, and instead just go with pure server-side if you want security. But it's fascinating.