जेसक्रिप्ट बिगइंट
- पिछला पृष्ठ JS नंबर
- अगला पृष्ठ JS नंबर विधियाँ
कोर्स सिफारिश:
JavaScript BigInt वेरियेबल बड़े इंटीजर मानों को संग्रहीत करने के लिए उपयोग किए जाते हैं जो सामान्य JavaScript नंबर के रूप में प्रदर्शित नहीं किए जा सकते।
JavaScript पूर्णांक निश्चयता
JavaScript पूर्णांक की निश्चयता की सबसे अधिक लंबाई 15 डिजिट है:
पूर्णांक निश्चयता let x = 999999999999999;
let y = 9999999999999999;
JavaScript में सभी नंबर 64 बिट फ्लॉटिंग पॉइंट फॉर्मेट (IEEE 754 स्टैंडर्ड) में संग्रहीत होते हैं。
इस मानक के अनुसार,बड़े इंटीजर को सटीक रूप से प्रदर्शित नहीं किया जा सकता है और गणना की जाती है。
- सबसे बड़ा 9007199254740991(253-1)
- सबसे छोटा -9007199254740991(-(253-1))
इस दायरे से बाहर के पूर्णांक मान की निश्चितता खो जाती है。
कैसे BigInt बनाया जाता है
BigInt बनाने के लिए इंटीजर के अंत में n
، या बुल BigInt()
फ़ंक्शन:
उदाहरण 1
let x = 9999999999999999; let y = 9999999999999999n;
उदाहरण 2
let x = 1234567890123456789012345n; let y = BigInt(1234567890123456789012345);
BigInt: एक नया JavaScript डाटा प्रकार
BigInt का JavaScript टाइप "bigint
":
उदाहरण
let x = BigInt(999999999999999); let type = typeof x;
BigInt JavaScript में दूसरा नंबर डाटा प्रकार है (Number के बाद)
BigInt के लिए JavaScript में समर्थित डाटा प्रकारों की कुल संख्या 8 है:
- String
- Number
- Bigint
- Boolean
- Undefined
- Null
- Symbol
- Object
BigInt ऑपरेटर
JavaScript Number के ऑपरेटर को BigInt पर भी लागू किया जा सकता है。
BigInt गुणा का उदाहरण
let x = 9007199254740995n; let y = 9007199254740995n; let z = x * y;
注意
不允许在 BigInt 和 Number 之间进行算术运算(类型转换会丢失信息)。
BigInt 无法进行无符号右移操作(>>>),因为它没有固定的宽度。
BigInt दशमलवी
BigInt में दशमलवी नहीं हो सकता。
BigInt विभाजन इस्पेक्ट
let x = 5n; let y = x / 2; // त्रुटि: BigInt और अन्य तरीकों को मिलाना नहीं होता, स्पष्ट रूप से परिवर्तन करें.
let x = 5n; let y = Number(x) / 2;
BigInt छहवीं संख्या, आठवीं संख्या और द्विपद
BigInt को छहवीं संख्या, आठवीं संख्या या द्विपद संख्या में भी लिखा जा सकता है:
BigInt छहवीं संख्या इस्पेक्ट
let hex = 0x20000000000003n; let oct = 0o400000000000000003n; let bin = 0b100000000000000000000000000000000000000000000000000011n;
चौड़ाता जानकारी
राउंडिंग करने से कार्यक्रम की सुरक्षा को खतरा हो सकता है:
MAX_SAFE_INTEGER इस्पेक्ट
9007199254740992 === 9007199254740993; // लूटा है!!!
ब्राउज़र समर्थन
2020 वर्ष 9 महीने से लेकर, सभी ब्राउज़रों ने BigInt को समर्थन करना शुरू किया है:
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 67 | Edge 79 | Firefox 68 | Safari 14 | Opera 54 |
2018 वर्ष 5 महीने | 2020 वर्ष 1 महीने | 2019 वर्ष 7 महीने | 2020 वर्ष 9 महीने | 2018 वर्ष 6 महीने |
सबसे छोटा और सबसे बड़ा सुरक्षित नंबर
ES6 ने Number ऑब्जेक्ट को max और min गुणों को जोड़ा है:
MAX_SAFE_INTEGER
MIN_SAFE_INTEGER
MAX_SAFE_INTEGER इस्पेक्ट
let x = Number.MAX_SAFE_INTEGER;
MIN_SAFE_INTEGER इस्पेक्ट
let x = Number.MIN_SAFE_INTEGER;
नए नंबर विधियाँ
ES6 ने Number ऑब्जेक्ट के लिए दो नए विधियाँ जोड़ी हैं:
Number.isInteger()
Number.isSafeInteger()
Number.isInteger() विधि
यदि पारामीटर विन्यासांक है, तो Number.isInteger() विधि वापस देती है true
.
isInteger() इंस्टांस
Number.isInteger(10); Number.isInteger(10.5);
Number.isSafeInteger() विधि
सुरक्षित विन्यासांक दोगुना विन्यासांक के रूप में सही वर्णन कर सकने वाले विन्यासांक है
यदि पारामीटर सुरक्षित विन्यासांक है, तो Number.isSafeInteger() विधि वापस देती है true
.
isSafeInteger() इंस्टांस
Number.isSafeInteger(10); Number.isSafeInteger(12345678901234567890);
सुरक्षित विन्यासांक -(253 - 1) से + (253 - 1) सभी विन्यासांक
यह एक सुरक्षित विन्यासांक है: 9007199254740991।यह एक सुरक्षित विन्यासांक नहीं है: 9007199254740992।
- पिछला पृष्ठ JS नंबर
- अगला पृष्ठ JS नंबर विधियाँ