DEV Community

Discussion on: What is the oddest JavaScript behavior?

Collapse
 
mellen profile image
Matt Ellen

you have just blown my tiny mind

Collapse
 
dwd profile image
Dave Cridland

Of course, I made a mistake on it (now corrected), but still. If you want to see something batshit insane with scoping and hoisting, you can try and get your head around this:

function fib(n) {
  if (n) {
    a = 1;
    b = 0;
    c = n + 1;
  }
  if (c === 1) {
    return a + b;
  }
  c = c - 1;
  let d = a + b;
  b = a;
  a = d;
  return fib();
}
Thread Thread
 
mellen profile image
Matt Ellen

😭