2016-12-20 7 views
0

私は、数字と小数点以下の桁数を取ることができる関数を作成しようとしています。 私はparseInt(prompt())を使用して、小数点以下の桁数と小数点数を指定しています。例えば複数の小数点以下の桁数を丸める方法。 Javascript

round(3.141519, 2) -> 3.14 
round(5986.32456, 4) -> 5986.3246 

は、誰かがこれで私を助けることができますか?

+0

グーグル:[サイト:stackoverflow.com小数点へのjavascriptラウンド](https://www.google.com/search?q=site%3Astackoverflow.com+javascript+round+to +小数) –

+0

Math.roundを使用できませんか? https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Math/round – Hosar

+0

[JavaScriptの数学、2桁小数点以下の四捨五入]の可能な複製(http://stackoverflow.com/questions/) 15762768/javascript-math-round-to-two-decimal-places) –

答えて

1

をチェックtoFixed

を使用することができますが、精度を指定することができます短い関数であり、数を返します。

function round(number, places) { 
    number = parseFloat(number, 10); 
    var e = parseInt(places || 2, 10); 
    var m = Math.pow(10, e); 
    return Math.floor(number * m)/m; 
} 

またはsligh TLY短いES6機能:

const round = (number, places=2) => { 
    const m = Math.pow(10, places); 
    return Math.floor(number * m)/m; 
} 
+0

私は最初の解決策を使用しました。私が関数を実行するとNaNが返されます。 – Leo

+0

小数点以下桁数を丸めた数字を印刷してはいけませんか? – Leo

+0

@Leo番号を渡していませんか? 'round(3.1456,3)'は私のために働いています... –

1

あなたはここでは、次の

console.log(3.141519.toFixed(2)) 
 
console.log(5986.32456.toFixed(4))

+0

'toFixed'は文字列を返します。 – Carcigenicate

関連する問題