Javascript Number , Javascript number Method and properties in hindi , जावास्क्रिप्ट नंबर और जावास्क्रिप्ट नंबर मेथड और प्रॉपर्टी हिंदी
Image by PublicDomainPicturesPixabay
javascript number
javascript में अन्य प्रोग्रामिंग कि तरह विभिन्न प्रकार के number (int , short , float ..) नही होते है| केवल एक ही प्रकार का number होता है|
number को decimals या बिना डेसीमल के डायरेक्ट लिखा जा सकता है
ज्यादा बड़े number या ज्यादा छोटे numbers को साइंटिफिक (घातांक) notation में लिखा जा सकता है |
javascript numbers उदाहरण
<script>
var e = 2.718;
//var x = 1;
console.log(e);
//console.log(x);
</script>
आउटपुट देखें =>
<script>
<script>
var sunD = 1.5 * 10e11;
//var floatROM = 3.4E-38;
//3.4E-38 से ./, 3.4E+38
console.log(sunD);
//console.log(x);
</script>
आउटपुट देखें =>
शुद्धता (Precision)
पूर्णांक संख्याओं को 15 डिजिट तक आप शुद्धता के साथ लिख सकते है |
15 अंक से अधिक अंक देने पर number एक्यूरेट नही रहते है |
<script>
//var num0 = 1111111111111111 - 8888888888888888; upto 16 digit
var num = 999999999999999;
var num1 = 9999999999999999;
console.log(num , num1);
//कामा से separate कर कई variable word प्रिंट किये जा सकते है
</script>
आउटपुट देखें =>
जैसे कि आप देख पा रहे होंगे 15 से ज्यादा अंको में value देने पर wrong आउटपुट दे रहे है |
हालाँकि 1111111111111111 - 8888888888888888 के केस में 16 अंक देने पर wrong आउटपुट देता है |
decimals
javascript में 17 डिजिट तक डेसीमल सपोर्ट करता है ,लेकिन डेसीमल numbers का कैलकुलेशन (फ्लोटिंग पॉइंट number ) हमेशा एक्यूरेट नही रहता है |
लेकिन ऐसा नही है आप उसे एक्यूरेट नही कर सकते है , बाद के टुटोरिअल में हम देखने वाले है | कैलकुलेशन बग को कैसे दूर कर सकते है |
<script>
var num = 5.33 ;
var num1 = 5.2 ;
/*इस प्रकार कई कैलकुलेशन में बग मिल जाता है */
/*हालाँकि इन बग को आसानी से दूर किया जा सकता है */
console.log(num + num1);
</script>
आउटपुट देखें =>
जैसे कि आप आउटपुट में देख पा रहे होंगे , आउटपुट 10.53 होना चाहिए जबकि 10.530000000000001 प्राप्त हुआ है |
NaN :
NaN का मतलब होता है , Not a Number
जावास्क्रिप्ट में NaN word को ऐसा number को दर्शाने के रिसर्व किया गया है कि यह लीगल number नही है |
<script>
var cal= 50 / "html";
console.log(cal);
</script>
आउटपुट देखें =>
<script>
var cal= "50" / "5";
//अगर सभी string में numeric value है , तो result number में ही होगा |
console.log(cal);
</script>
आउटपुट देखें =>
इस प्रकार अगर आप numeric को non - numeric के साथ कैलकुलेट करते है तो result string में होता है |
लेकिन अगर कैलकुलेशन में सभी value न्यूमेरिक है , तो चाहे आप value को double quotes में ही क्यों न दें (अर्थात string के रूप में ) आउटपुट number ही होगा , अर्थात value को number जैसे ही treat किया जायेगा|
isNaN()
आप global function isNaN() का प्रयोग भी दी गई value, valid number है कि नही ज्ञात करने के लिए कर सकते है |
<script>
var cal= 50 / "html";
console.log(isNaN(cal));
</script>
आउटपुट देखें =>
true यह दर्शाता है कि result लीगल number नही है |
अगर आप NaN का प्रयोग आप किसी numeric के साथ कैलकुलेशन में करते है तो result में आपको NaN ही प्राप्त होगा
हालाँकि वही अगर string के साथ concatenate करते है तो वह वह दिए गए string से concatenate हो जायेगा चाहे string कोई numeric क्यों न हो |
NaN का typeof number होता है |
NaN उदाहरण
<script>
var result1 = NaN + 1;
var result2 = NaN + "1";
var resut3 = typeof NaN;
console.log(result1 , result2 , resut3);
</script>
आउटपुट देखें =>
NaN को number कि तरह ले , अगर आप quotes लगा देते है तो यह एक साधारण सा text string बन जयेगा |
NaN case sensitive है , अर्थात इसे ऐसे ही प्रयोग करें , अगर आप NaN को number के रूप में प्रयोग करते है तथा कुछ भी अन्य type (nan , naN ..) से लिखते है तो यह error देगा |
javascript number methods
javascript में numbers के साथ खेलने के लिए number मेथड का आप उपयोग कर सकते है | जैसे string के लिए आप पिछले लेसन में string मेथड देखा होगा |
Number के methods और properties
जैसे कि string के लेसन में हमने बताया था कि , primitive value के पास कोई property और मेथड नही होता है क्योकि property और मेथड केवल object के पास होता है
इसलिए primitive value जैसे की var num =1; var string ='htmlinhindi' आदि के पास कोई methods या properties नहीं होती है
लेकिन रुकिए... javascript मे primitive values के लिए भी मेथड्स` और properties होती है
क्योंकि जावास्क्रिप्ट मे जब methods और properties को execute किया जा रहा होता है , तब primitive वैल्यू को भी object माना जाता है |
toString() method का प्रयोग करके आप number को string में बदल सकते है|
अब चाहे number कोई variable हो , कोई literal हो या कोई expression ही क्यों न हो |
toString() method
<script>
var e = 2.123;
var num2String =e.toString(); //number variable को string में बदलना
var num2String1 = (2).toString();//literal को string में बदलना
var num2String2 =(1+2).toString();// expression(व्यंजक) result को string में बदलना
console.log(num2String , num2String1 , num2String2 , typeof num2String);
</script>
आउटपुट देखें =>
जैसे कि आप देख पा रहे होंगे num2String का typeof string है |
toExponential() Method
toExponential() Method दिए गये number को parameeter के अनुसार number को round करके exponential notation के साथ return करता है |
toExponential() मेथड में parameter में दिया गया number यह निर्धारित करेगा कि decimal point के बाद कितने character रहेंगे |
अगर parameter में 2 value दी गई है तो decimal के बाद दो number रहेंगे |
अगर आप parameter में कोई value नही देते है तो method number को round नही करेगा |
<script>
var e = 22.523;
var num2String = e.toExponential();
var num2String = (2.523).toExponential();
var num2String1 = (2.123).toExponential(2);
var num2String2 = (2.123).toExponential(4);
console.log(num2String, num2String1 , num2String2);
</script>
आउटपुट देखें =>
अगर आप number को scientific e notation में convert करना जानते होंगे तो बिना round of के 22.523 का "2.2523e+1" मात्र मैथ कन्वर्शन है |
toFixed method
toFixed() method parentheses में पास कि गई value के आधार पर दशमलव के बाद कितने अंक होगे को निर्धारित करता है
अगर पास कि गई value 2 है तब :
-
अगर दशमलव के बाद 2 से ज्यादा अंक है तो हमें दशमलव के बाद दो अंक round of करके प्राप्त होंगे|
-
अगर दशमलव के बाद 2 से कम अंक है तो 0 आटोमेटिक एड मिलेगा जितने कम अंक होंगे |
अगर कोई value पास नही कि जाती या 0 value पास कि जाती है तब
-
दशमलव के बाद चाहे जितने अंक हो वो round of होकर दशमलव के पहले वाले अंक में जुड़ जायेगा |
-
जैसे आप शॉप में कुछ खरीदते हो तब अगर value 9.90 होतो तो आपको 10 देना होता है |इसका मतलब parentheses में कोई भी value नही दी गई है|
toFixed() उदाहरण
<script>
var e = 2.523;
var num2string = e.toFixed();
var num2string1 = (2.126).toFixed(2);
var num2string2 = (2.123).toFixed(4);
console.log(num2string, num2string1 , num2string2);
</script>
आउटपुट देखें =>
कृपया ध्यान दे , अगर आपने नोटिस किया होतो parentheses दी गई value कि काउंटिंग number में डेसीमल के बाद से होती है अर्थात डेसीमल के बाद पहला डिजिट 1 और फिर 2 आदि | इस प्रकार अगर parentheses में अगर दो value दी है तो दो अंक तीसरे को round of करके बनाया जायेगा | या 1 अंक है तो एक और 0 एड कर दिया जायेगा |
toPrecision() Method
toPrecision() method का कांसेप्ट भी लगभग toFixed() के सामान ही है | अंतर उदाहरण के बाद देखे
toPrecision() उदाहरण
<script>
var e = 2.523;
var num2string = e.toPrecision();
var num2string1 = (2.126).toPrecision(2);
var num2string2 = (2.123).toPrecision(4);
console.log(num2string, num2string1 , num2string2);
</script>
आउटपुट देखें =>
जैसे कि आप आउटपुट में देख पा रहे होंगे , parentheses में कोई value न देने पर same value return में मिल रही है | जबकि toFixed() में बिना डेसीमल के round of number मिलता है |
दोनों मेथड में आप तीसरे variable के आउटपुट को देखेंगे तो आप पाएंगे कि toPrecision() में 0 प्राप्त नही हुआ है जबकि toFixed() में 0 प्राप्त हुआ है |
ऐसा इसलिए क्योकि इसमें काउंटिंग दशमलव के पहले से हो रही है अर्थात अगर parentheses में value 2 दी गई है तो दशमलब के बाद कि पहली संख्या 2 पर रहेगी जबकि toFixed() मेथड में दशमलव के बाद कि दूसरी संख्या 2 पर रहेगी | अब आप जरूरत के अनुसार किसी एक को चुन सकते है |
0 टिप्पणियाँ
आपके सुझाव सादर आमंत्रित है