जेएस में यह कोड मुझे एक पॉपअप कहता है "मुझे लगता है कि अशक्त एक संख्या है", जो मुझे थोड़ा परेशान करता है। मैं क्या खो रहा हूँ?
if (isNaN(null)) {
alert("null is not a number");
} else {
alert("i think null is a number");
}
मैं फ़ायरफ़ॉक्स 3 का उपयोग कर रहा हूँ। क्या यह ब्राउज़र बग है?
अन्य परीक्षण:
console.log(null == NaN); // false
console.log(isNaN("text")); // true
console.log(NaN == "text"); // false
तो, समस्या NaN के साथ एक सटीक तुलना नहीं लगती है?
संपादित करें: अब सवाल का जवाब दिया गया है, मैंने संग्रह के लिए एक बेहतर संस्करण के लिए अपनी पोस्ट को साफ कर दिया है। हालाँकि, यह कुछ टिप्पणियों को प्रस्तुत करता है और कुछ जवाबों को थोड़ा असंगत बनाता है। उनके लेखकों को दोष मत दो। जिन चीज़ों में मैंने बदलाव किया, वे थीं:
- एक नोट निकालते हुए कहा कि मैंने पहली बार में हेडलाइन को खराब कर दिया था, इसके अर्थ को बदलकर
- पहले के जवाबों से पता चला कि मैं स्पष्ट रूप से पर्याप्त नहीं था कि मुझे ऐसा क्यों लगा कि व्यवहार अजीब था, इसलिए मैंने उन उदाहरणों को जोड़ा जो एक स्ट्रिंग की जांच करते हैं और एक मैनुअल तुलना करते हैं।