यह एन अंकों के चक्कर लगाने के लिए काम करता है (यदि आप केवल एन अंकों को कम करना चाहते हैं तो Math.round कॉल को हटा दें और Math.trunc one का उपयोग करें):
function roundN(value, digits) {
var tenToN = 10 ** digits;
return /*Math.trunc*/(Math.round(value * tenToN)) / tenToN;
}
जब मैं डेटा हेरफेर ई-स्लेट घटकों को संलेखन कर रहा था तो अतीत में जावा पर इस तरह के तर्क का सहारा लेना पड़ा था । जब से मुझे पता चला था कि 0 में कई बार 0 जोड़कर आप कुछ अनपेक्षित रूप से लंबे दशमलव भाग के साथ समाप्त हो जाएंगे (यह फ्लोटिंग पॉइंट अंकगणित के कारण है)।
हमेशा 2 दशमलव स्थानों को दिखाने के लिए प्रारूप संख्या पर एक उपयोगकर्ता टिप्पणी इस तकनीक को स्केलिंग कहती है।
कुछ उल्लेख ऐसे मामले हैं जो अपेक्षित रूप से गोल नहीं करते हैं और http://www.jacklmoore.com/notes/rounding-in-javascript/ पर इसके बजाय सुझाव दिया गया है:
function round(value, decimals) {
return Number(Math.round(value+'e'+decimals)+'e-'+decimals);
}
toFixed()
( developer.mozilla.org/En/Core_JavaScript_1.5_Reference/… ) का उपयोग कर सकते हैं , लेकिन यह IE में छोटी गाड़ी है: stackoverflow.com/questions/661562/… ; आपको अपना स्वयं का संस्करण लिखना होगा ...