Math.ceil() vs Math.round()
दोनों नंबर को निकटतम इंटीजर में राउंड करते हैं, लेकिन दिशा अलग होती है।
तुलना
| मेथड | व्यवहार | दिशा |
|---|---|---|
Math.ceil() | ऊपर की ओर राउंड (छत की ओर) | बड़े मान की ओर |
Math.round() | निकटतम इंटीजर (मानक राउंडिंग) | .5 से ऊपर तो ऊपर, नीचे तो नीचे |
Math.floor() | नीचे की ओर राउंड (फर्श की ओर) | छोटे मान की ओर |
Math.ceil() - सीलिंग फंक्शन
दिए गए नंबर से बड़ा या बराबर सबसे छोटा इंटीजर लौटाता है।
<html> <body> <script> console.log(Math.ceil(5.34)); // 6 console.log(Math.ceil(5.00)); // 5 console.log(Math.ceil(-5.34)); // -5 (ऊपर की ओर: -5 > -5.34) console.log(Math.ceil(-5.00)); // -5 </script> </body> </html>
आउटपुट
6 5 -5 -5
Math.round() - मानक राउंडिंग
निकटतम इंटीजर में राउंड करता है। .5 या अधिक होने पर ऊपर, कम होने पर नीचे।
<html> <body> <script> console.log(Math.round(5.34)); // 5 console.log(Math.round(5.50)); // 6 console.log(Math.round(5.49)); // 5 console.log(Math.round(-5.34)); // -5 console.log(Math.round(-5.50)); // -5 (नोट: -5.5 → -5, "ऊपर" की ओर) console.log(Math.round(-5.51)); // -6 </script> </body> </html>
आउटपुट
5 6 5 -5 -5 -6
नोट: Math.round() का व्यवहार .5 पर
JavaScript में Math.round() "राउंड हाफ अप" (Round half up) का उपयोग करता है, लेकिन नेगेटिव नंबर्स के लिए "ऊपर" का अर्थ "जीरो से दूर" नहीं बल्कि "बड़े मान की ओर" होता है। इसलिए Math.round(-5.5) === -5 (क्योंकि -5 > -6)।
व्यावहारिक उदाहरण
<script> // पेजिनेशन: कुल पेजेस var totalItems = 53, perPage = 10; var totalPages = Math.ceil(totalItems / perPage); // 6 पेज // ग्रिड लेआउट: कॉलम्स var items = 7, cols = 3; var rows = Math.ceil(items / cols); // 3 पंक्तियाँ // मूल्य प्रदर्शन: निकटतम रुपया var price = 99.49; var displayPrice = Math.round(price); // 99 // प्रतिशत गणना var percent = Math.round((3/7) * 100); // 43% </script>
सारांश: 5.34 के लिए
Math.ceil(5.34)= 6 (ऊपर)Math.round(5.34)= 5 (निकटतम)Math.floor(5.34)= 5 (नीचे)