ECMA-262 9 वें संस्करण, जून 2018, (मानक जिसे जावास्क्रिप्ट के अनुरूप बनाने का इरादा है) 6.1.6 में "संख्या प्रकार" कहते हैं:
... 9007199254740990 (यानी, 2 53 -2) आईईईई मानक के "नॉट-ए-नंबर" मूल्यों को एक विशेष NaN मान के रूप में ECMAScript में दर्शाया गया है। कुछ कार्यान्वयन में, बाहरी कोड एक अंतर का पता लगाने में सक्षम हो सकता है। विभिन्न गैर-संख्या मानों के बीच, लेकिन ऐसा व्यवहार कार्यान्वयन-निर्भर है; ECMAScript कोड में, सभी NaN मान एक दूसरे से अप्रभेद्य हैं।
24.1.17 "NumberToRawBytes (प्रकार, मान, isLittleEndian)" कहते हैं:
... यदि मान NaN है, तो कच्चे माल को किसी भी कार्यान्वयन के लिए सेट किया जा सकता है जो IEEE 754-2008 बाइनरी 64 प्रारूप में नंबर-इनकोडिंग के लिए चुना गया हो। एक कार्यान्वयन को हमेशा प्रत्येक कार्यान्वयन के लिए एक ही एन्कोडिंग का चयन करना चाहिए जो कि अलग-अलग NaN मान के लिए हो।…
मुझे इस प्रश्न पर रोशनी डालने वाले NaN का कोई अन्य मार्ग नहीं दिखाई देता है। एक तरफ, 24.1.17 हमें प्रभावी रूप से बताता है कि NaN को कच्चे बाइट में परिवर्तित करते समय एक NaN के बिट्स को संरक्षित किया जाना चाहिए। हालाँकि, हमें यह बताने के लिए और कुछ नहीं है कि बिट्स को अन्य परिचालनों में संरक्षित किया जाना चाहिए। कोई यह अनुमान लगा सकता है कि यह इरादा है, क्योंकि 24.1.17 में यह आवश्यकता किसी भी उद्देश्य से काम करेगी यदि बिट्स को किसी अन्य ऑपरेशन द्वारा मनमाने ढंग से बदला जा सकता है। लेकिन मैं जावास्क्रिप्ट कार्यान्वयन पर भरोसा नहीं करेगा कि इस इरादे से इसे लागू किया है।