How can I implement logics without if else, switch or a built-in function in javascript

Viewed 55

Suppose we have function, which returns 3 when passing 5 to it and return 5 when passing 3 to it. I know it is very easy with if else and switch.

for example

function countReturn(number){
  if(number === 3){
  return 5
 }

  if(number === 5){
  return 3
 }

}

But how can I implement the same logic without if else, switch or any built-in function?

4 Answers

You can store the return values in an array:

function countReturn(n) {
  let a = [,,,5,,3];
  return a[n];
}

That will return undefined for other inputs, just like your original code.

You could take the sum (3 + 5) and return the delta of the actual number.

function threeOrFive(value) {
    return 8 - value;
}

console.log(threeOrFive(3)); // 5
console.log(threeOrFive(5)); // 3

you can so it with ternary like this

return number === 3 ? 5 : (number === 5 ? 3 : 0);

Or you can do it with object

const obj = {
  "5": 3,
  "3": 5
};
return obj[number];

We can return the xored value between 5 and 3:

return number ^ 6

Implementing the same logic, it would return 3 when given 5 and vice versa

Related