2017-07-20 3 views
7

जोड़ता है मैं Number() जेएस फ़ंक्शन का उपयोग कर रहा हूं जो स्ट्रिंग मान को संख्यात्मक रूप से परिवर्तित करना है।जेएस संख्या फ़ंक्शन अंत में शून्य

यह छोटी संख्या के लिए ठीक काम कर रहा है।

enter image description here

वहाँ एक काम इस समस्या के लिए चारों ओर है: - बड़े लोगों के लिए यह रूप में छवि पर दिखाया शून्य से मूल्यों substitude शुरू हो रहा है?

उत्तर

2

जे एस में, सबसे बड़ा अभिन्न मूल्य 9007199254740991 है, सभी सकारात्मक और नकारात्मक पूर्णांक -9007199254740991 और 9007199254740991 से अधिक नहीं होना चाहिए।

इसे 2 -1 के रूप में परिभाषित किया गया है।

console.log(Number.isSafeInteger(parseInt('1111111111'))) 
 
console.log(parseInt('1111111111')) 
 
console.log(Number.isSafeInteger(parseInt('111111111111111111'))) 
 
console.log(parseInt('111111111111111111')) 
 
//9007199254740991 - The largest JS Number 
 
console.log(Number.isSafeInteger(parseInt('9007199254740991')))

2

इसका कारण यह है कि आप संख्याओं को Number.MAX_SAFE_INTEGER और जावास्क्रिप्ट से बड़े होते हैं का उपयोग कर रहे इन नंबरों का प्रतिनिधित्व करने की गारंटी नहीं है सही ढंग से

उपयोग Number.isSafeInteger जाँच करने के लिए:

> Number.isSafeInteger(Number('111111111111111111')) 
< false 
संबंधित मुद्दे