आज मैंने सिर्फ एक पोस्ट लिखा है कि "हम ई.पर्वटरडेफ़ल ()" में "ई" जैसे अक्षरों का उपयोग क्यों करते हैं? और मुझे लगता है कि मेरा जवाब कुछ समझ में आएगा ...
सबसे पहले, हमें addEventListener का सिंटैक्स देखें
आम तौर पर यह होगा:
target.addEventListener (प्रकार, श्रोता [, useCapture]);
और addEventlistener के मापदंडों की परिभाषा हैं:
टाइप type एक स्ट्रिंग जो ईवेंट प्रकार का प्रतिनिधित्व करती है, जिसके लिए सुनने के लिए।
श्रोता ener वह वस्तु जो एक अधिसूचना प्राप्त करती है (एक वस्तु जो इवेंट इंटरफ़ेस को लागू करती है) जब निर्दिष्ट प्रकार की कोई घटना होती है। यह EventListener इंटरफ़ेस या जावास्क्रिप्ट फ़ंक्शन को लागू करने वाली एक वस्तु होनी चाहिए।
(एनएन से)
लेकिन मुझे लगता है कि एक बात पर टिप्पणी की जानी चाहिए:
जब आप जावास्क्रिप्ट फ़ंक्शन को श्रोता के रूप में उपयोग करते हैं, तो ऑब्जेक्ट जो कि इवेंट इंटरफ़ेस (ऑब्जेक्ट इवेंट) को लागू करता है, स्वचालित रूप से फ़ंक्शन के "पहले पैरामीटर" को सौंपा जाएगा । यदि आप उपयोग करते हैं, तो फ़ंक्शन (ई), ऑब्जेक्ट को "ई" को सौंपा जाएगा क्योंकि "ई" फ़ंक्शन का एकमात्र पैरामीटर है (निश्चित रूप से पहले वाला!), तो आप कुछ को रोकने के लिए e.preventDefault का उपयोग कर सकते हैं ...।
आइए नीचे दिए गए उदाहरण की कोशिश करें:
<p>Please click on the checkbox control.</p>
<form>
<label for="id-checkbox">Checkbox</label>
<input type="checkbox" id="id-checkbox"/>
</div>
</form>
<script>
document.querySelector("#id-checkbox").addEventListener("click", function(e,v){
//var e=3;
var v=5;
var t=e+v;
console.log(t);
e.preventDefault();
}, false);
</script>
परिणाम होगा: [ऑब्जेक्ट माउसइवेंट] 5 और आप क्लिक इवेंट को रोकेंगे।
लेकिन अगर आप टिप्पणी चिन्ह को हटाते हैं जैसे:
<script>
document.querySelector("#id-checkbox").addEventListener("click", function(e,v){
var e=3;
var v=5;
var t=e+v;
console.log(t);
e.preventDefault();
}, false);
</script>
आपको यह मिलेगा: 8 और एक त्रुटि : "बिना पढ़ा हुआ टाइपर: e.preventDefault HTMLInputElement। (VM409: 69)" पर एक फ़ंक्शन नहीं है।
निश्चित रूप से, इस बार क्लिक ईवेंट को रोका नहीं जाएगा। लेकिन मान लीजिए कि फ़ंक्शन में "ई" को फिर से परिभाषित किया गया था।
हालाँकि, यदि आप कोड को इसमें बदलते हैं:
<script>
document.querySelector("#id-checkbox").addEventListener("click", function(e,v){
var e=3;
var v=5;
var t=e+v;
console.log(t);
event.preventDefault();
}, false);
</script>
हर काम फिर से ठीक से काम करेगा ... आपको 8 मिलेंगे और क्लिक इवेंट को रोका जाएगा ...
इसलिए, "ई" आपके फ़ंक्शन का एक पैरामीटर है और आपको "ईवेंट ऑब्जेक्ट" प्राप्त करने के लिए फ़ंक्शन () में "ई" की आवश्यकता होती है, फिर ई.पेंटवेंटफॉल्ट () का प्रदर्शन करें। यही कारण है कि आप "ई" को ऐसे किसी भी शब्द में बदल सकते हैं जो js द्वारा आरक्षित नहीं है।