2010-07-02 8 views
192

मैं एक संख्या को 2 दशमलव स्थानों पर प्रदर्शित करना चाहता था।जावास्क्रिप्ट 2 दशमलव स्थानों पर एक फ्लोट प्रदर्शित करता है

मैं मैं जावास्क्रिप्ट में toPrecision(2) इस्तेमाल कर सकते हैं सोचा।

हालांकि, अगर संख्या 0.05 है, मैं 0.0500 मिलता है। मैं बल्कि यह वही रहना चाहूंगा।

JSbin पर यह देखें।

ऐसा करने का सबसे अच्छा तरीका क्या है?

मैं कुछ समाधान कोडिंग के बारे में सोच सकते हैं, लेकिन मैं (मुझे आशा है) कुछ इस तरह बनाया गया है कल्पना?

उत्तर

333
float_num.toFixed(2); 

नोट:toFixed() शून्य से दौर या पैड होगा यदि आवश्यक निर्दिष्ट लंबाई को पूरा करने के।

+19

लेकिन यह स्ट्रिंग देता है, फ्लोट नहीं! – Anwar

+12

प्रश्न लेखक "प्रदर्शन" यह है, तो एक स्ट्रिंग सही –

+1

है और आप हमेशा parseFloat उपयोग कर सकते हैं (float_num.toFixed (2)) स्ट्रिंग वापस कन्वर्ट करने के लिए केवल दो दशमलव रखते हुए फ्लोट करने के लिए चाहता है। – Hankrecords

44

आप इसे toFixed फ़ंक्शन के साथ कर सकते हैं, लेकिन यह buggy in IE है। यदि आप एक विश्वसनीय समाधान चाहते हैं, तो मेरा उत्तर here देखें।

+16

प्रौद्योगिकी बल्कि नोड js 'float_num.toFixed में विकसित किया जाना चाहिए की तुलना में आईई के लिए अनुकूल ... (Btw (2); 'ठीक काम करता है) – fider

4

पता नहीं है कि कैसे मैं इस सवाल का है, लेकिन भले ही वह कई वर्षों है के बाद से इस लिए कहा गया है, मैं एक त्वरित और आसान विधि मैं पालन जोड़ना चाहते हैं और मुझे नीचे कभी नहीं किया है:

var num = responce_from_a_function_or_something(); 
var fixed_num = parseFloat(num).toFixed(2); 
+0

देखें क्यों 'parseFloat() 'वहाँ? यह केवल तभी उपयोग किया जाना चाहिए जब संख्या स्ट्रिंग से आ रही है। – alex

+2

कुछ मौकों पर जब मुझे किसी तत्व से jquery के साथ कुछ "डेटा-" विशेषता मान मिलता है, यदि मैं केवल फ़िक्स्ड का उपयोग करता हूं तो यह एक त्रुटि उत्पन्न करता है। parseFloat इसे ठीक करता है। – panos

+1

हाँ, यही मेरा मतलब है * यदि यह स्ट्रिंग * से आया है। लेकिन इसका इस्तेमाल हमेशा बुरा सलाह है। – alex

0

function round(value, decimals) { return Number(Math.round(value+'e'+decimals)+'e-'+decimals); }

दौर (1.005, 2); // वापसी 1.01

दौर (1.004, 2); // 1,00

जवाब के बजाय 1 लौटने के लिए इस लिंक पीछा कर रहा है:। http://www.jacklmoore.com/notes/rounding-in-javascript/