Flutuação arredondada por `n` casas decimais em Javascript

Se você precisar arredondar os números flutuantes em n casas decimais, ou seja, arredondar 3,1415926 para 4 casas decimais = 3,1416, tente esta função:

Math.roundBy = function (decimalPlaces, n) {
var scale = Math.pow(10, decimalPlaces);
return Math.round(scale * n) / scale;
};

Math.roundBy(4, Math.PI); // 3.1416

Observe que o argumento da casa decimal vem primeiro. Isso torna a função amigável com curry:

roundBy2 = Math.round.curry(2);
roundBy2
(someNum);

Consulte https://coderwall.com/p/tryjpq/currying-javascript-functions para obter mais informações sobre currying.