Avatar ·

JavaScript में !! (डबल एक्सक्लेमेशन) ऑपरेटर क्या करता है?

नमस्ते साथियों! मैं JavaScript में नया हूँ और मुझे एक अजीब कोड मिला। एक प्रोजेक्ट में मैंने यह कंस्ट्रक्शन देखा: ```javascript const isActive = !!someValue; ``` मैं समझता हूँ कि `!` लॉजिकल "NOT" (नेगेशन) है। लेकिन एक के बाद दो एक्सक्लेमेशन मार्क्स क्यों लिखें? इसका मतलब क्या है? मैंने एक साइन हटाने की कोशिश की — कोड टूट गया। दोनों हटाने की कोशिश की — वैसे भी ठीक से काम नहीं किया। मैंने पढ़ा कि `!!` कोई "ऑपरेटर" है, लेकिन ऑफिशियल डॉक्यूमेंटेशन में मुझे यह नहीं मिला। क्या यह कोई ट्रिक है? या सिर्फ कोड में बग है जिसे सब कॉपी कर रहे हैं? हो सकता है कि ऐसा करने का कोई और स्पष्ट तरीका हो? कृपया सरल शब्दों में समझाएँ कि यह किस लिए है और JavaScript समुदाय में यह इतना लोकप्रिय क्यों है। उदाहरणों के साथ समझाएँ ताकि यह स्पष्ट हो कि यह विभिन्न डेटा टाइप्स: स्ट्रिंग्स, नंबर्स, ऑब्जेक्ट्स, null और undefined के साथ कैसे काम करता है। पहले से धन्यवाद!