Buongiorno a tutti, sto imparando js per motivi di studio universitario e mi trovo un pò in difficoltà.
Chi mi spiega cosa fa questo codice, l'ho eseguito in console e so che il risultato è 67, ma non ho capito bene perchè. Grazie a chi vorrà darmi una piccola dritta.

codice:
var a=5, b=4, v=[4,5];

function f(b,c,d) {


  function g(c) {
    var a=31;
    d[1] += 3;
    v[0] += 2;
    a += 11;
    c += 3;
    return(b+c);
  }
  a += 5;
  b += 2;
  c += 7;
  return(g(c)+b+c+d[1]);
}


console.log(f(a-b,v[0],v)+a+b+v[0]+v[1]);