javascript - Save integer as float -
फ़ंक्शन prec (numb) {var numb_string = numb.toString ()। Split ('।') Return numb_string [(Numb_string.length - 1)] लंबाई} समारोह सींग (न्यूनतम, अधिकतम) {var most_accurate = Math.max (सटीक (न्यूनतम), सटीक (अधिकतम)); वापसी ((मठ। यादृच्छिक () * (अधिकतम - न्यूनतम) + न्यूनतम)। फिक्स (सबसे अधिक सटीक)); } // इन बिंदुओं के बीच यादृच्छिक संख्या देता है। 1 दशमलव सटीक स्थान: console.log (रैंडी (2.44.4)); // इन अंकों के बीच यादृच्छिक संख्या देता है। सटीकता के 3 दशमलव स्थान: console.log (रैंडी (2.443,4.445)); // इन अंकों के बीच यादृच्छिक संख्या देता है। 3 दशमलव स्थानों की शुद्धता चाहते हैं हालांकि, 0 प्राप्त करें: console.log (रेंडी (2.000,4.000)); // मुझे दशमलव स्थान क्यों मिलता है? क्योंकि फ़्लोट्स स्वतः पूर्णांक में गोल हो जाते हैं: console.log (4.0); // चाहते हैं 4.0 लॉग इन करने के लिए इसके बजाय मुझे '4' मिलता है
आपको यह पढ़ना जरूरी नहीं है कि फ़ंक्शन कैसे काम करते हैं। बस सांत्वना लॉग
असल में, मुझे दो अंकों के बीच एक सटीक डिग्री के एक यादृच्छिक संख्या को वापस करना होगा। रेंडी
फ़ंक्शन।
पास सटीक फ्लोट से परिशुद्धता स्वचालित रूप से प्राप्त हुई है। यह संख्या ठीक है जब संख्या सीमा 3.5
3.7
या 34.4322
800.3233
लेकिन 2.0
, 3.0
या 4.0000
नहीं, 5.0000
फिर संख्या स्वचालित रूप से पूर्णांक के रूप में सहेजी जाती है:
console.log (2.0) // = & gt; 2
मैं संख्या प्रोटोटाइप का विस्तार करना चाहता हूं ताकि 2.0
को 2.0
के रूप में सहेजा जा सके ताकि यह फ़ंक्शन पा सकते हैं परिशुद्धता:
फ़ंक्शन सटी (numb) {var numb_string = numb.toString ()। Split ('।') Numb_string return [(numb_string.length - 1)] लंबाई }
यह वर्तमान में सोचता है कि 3.000000000
में 0 दशमलव स्थान की शुद्धता है क्योंकि अगर 3E8
को सुन्न के रूप में पारित किया गया है
पैरामीटर, इसे 3
के रूप में पढ़ा जाता है। मैं इसे 3.000000000
के रूप में पढ़ता हूं, जबकि मैं यह randy (2.toFixed (3), 3.toFixed (3)) कर सकता हूँ
यह हो जाता है अपठनीय और यह निश्चित रूप से छोटे परिशुद्धता के लिए ऐसा करने के लिए अच्छा होगा: रेंडी (2.000,3.000)
क्या यह संभव है?
इस समस्या को हल करने के लिए एक चतुर तरीका है, यह परिभाषित करना है वर्ग जो आपको संख्या मानों और दशमलव मूल्यों को प्रबंधित करने में मदद करता है।
फ़ंक्शन हेल्पएनम्बर () {this.value = (प्रकार (तर्क [0]) == "संख्या")? तर्क [0]: 0; This.decimal = (typeof (तर्क [1]) == "संख्या")? तर्क [1]: 0; यह। वैल = फ़ंक्शन () {रिटर्न पार्सफ़्लोट (यह.वल्यू.टिस्टिक्स (यह डीसीमल)); } This.toString = function () {return (this.value.toFixed (this.decimal))। ToString (); }}
यह वर्ग कैसे काम करता है
अब पहली बात यह है कि इस तरह एक नया नंबर बनाना है
var num = HappyNumber (4.123545,3); // पहले तर्क है मूल्य // और दूसरा एक दशमलव है
अपनी वैरिएबल के मूल्य प्राप्त करने के लिए, आपको फ़ंक्शन Val
को इस तरह से उपयोग करना चाहिए
console.log (Num.Val ()); // यह एक आपके कंसोल पर 4.123 प्रिंट करता है
सबसे महत्वपूर्ण हिस्सा यह है, जब आप toString
फ़ंक्शन का उपयोग करते हैं तो यह आपका नंबर वापस करता है
Num.toString () // यह "4.123" (नया हैप्पीएनम्बर (4,4)) देता है। ToString (); // यह "4.0000" रिटर्न करता है अब आप (हैप्पनएनम्बर) के रूप में तर्कों को पास करते हैं, और आपके फ़ंक्शन का उपयोग स्ट्रिंग के लिए करते हैं और यह आपको सही मान देता है और यह ऐसे नंबरों के साथ काम करता है जैसे कि 1.00 2.000 4.00000
Comments
Post a Comment