जेएस ट्यूटोरियल

जेएस होम जे एस परिचय जे एस कहाँ करने के लिए जेएस आउटपुट जेएस स्टेटमेंट्स जेएस सिंटेक्स जे एस टिप्पणियाँ जेएस चर जे एस लेट जेएस कॉन्स्ट जेएस ऑपरेटर्स जे एस अंकगणित जेएस असाइनमेंट जेएस डेटा प्रकार जे एस कार्य जेएस ऑब्जेक्ट्स जेएस इवेंट्स जे एस स्ट्रिंग्स जे एस स्ट्रिंग तरीके जे एस स्ट्रिंग खोज जे एस स्ट्रिंग टेम्पलेट्स जेएस नंबर जेएस संख्या के तरीके जे एस सरणी जेएस सरणी के तरीके जेएस ऐरे सॉर्ट जेएस सरणी पुनरावृत्ति जेएस ऐरे कॉन्स्ट जे एस तिथियाँ जेएस तिथि प्रारूप जेएस तिथि प्राप्त करने के तरीके JS दिनांक सेट विधियाँ जे एस मठ जे एस रैंडम जे एस बूलियन्स जेएस तुलना जे एस शर्तें जे एस स्विच जेएस लूप फॉर In . के लिए JS लूप ओएफ के लिए जेएस लूप जेएस लूप जबकि जेएस ब्रेक जेएस Iterables जेएस सेट जेएस मैप्स जेएस टाइपोफ जे एस प्रकार रूपांतरण जेएस बिटवाइज जेएस रेगएक्सपी जे एस त्रुटियाँ जेएस स्कोप जे एस उत्थापन जेएस सख्त मोड जेएस यह कीवर्ड जेएस एरो फंक्शन जेएस क्लासेस जेएस JSON जेएस डिबगिंग जेएस स्टाइल गाइड जेएस सर्वोत्तम अभ्यास जेएस गलतियाँ जेएस प्रदर्शन जेएस आरक्षित शब्द

जेएस संस्करण

जेएस संस्करण जेएस 2009 (ES5) जेएस 2015 (ईएस6) जेएस 2016 जेएस 2017 जेएस 2018 जेएस आईई / एज जेएस इतिहास

जेएस ऑब्जेक्ट्स

वस्तु परिभाषाएँ वस्तु गुण वस्तु के तरीके वस्तु प्रदर्शन ऑब्जेक्ट एक्सेसर्स वस्तु निर्माता वस्तु प्रोटोटाइप वस्तु पुनरावर्तनीय वस्तु समूह वस्तु मानचित्र वस्तु संदर्भ

जे एस कार्य

फ़ंक्शन परिभाषाएँ फंक्शन पैरामीटर्स समारोह आमंत्रण फंक्शन कॉल समारोह लागू करें फंक्शन क्लोजर

जेएस क्लासेस

कक्षा परिचय वर्ग वंशानुक्रम क्लास स्टेटिक

जे एस एसिंक

जेएस कॉलबैक जे एस अतुल्यकालिक जे एस वादा जे एस एसिंक/प्रतीक्षा

जेएस एचटीएमएल डोम

डोम परिचय डोम तरीके डोम दस्तावेज़ डोम तत्व डोम एचटीएमएल डोम फॉर्म डोम सीएसएस डोम एनिमेशन डोम घटनाक्रम डोम इवेंट श्रोता डोम नेविगेशन डोम नोड्स डोम संग्रह डोम नोड सूचियाँ

जेएस ब्राउज़र बीओएम

जेएस विंडो जेएस स्क्रीन जेएस स्थान जेएस इतिहास जेएस नेविगेटर जेएस पॉपअप अलर्ट जेएस टाइमिंग जे एस कुकीज़

जेएस वेब एपीआई

वेब एपीआई परिचय वेब फॉर्म एपीआई वेब इतिहास एपीआई वेब संग्रहण API वेब वर्कर एपीआई वेब फ़ेच एपीआई वेब जियोलोकेशन एपीआई

जे एस अजाक्स

AJAX परिचय अजाक्स एक्सएमएलएचटीपी अजाक्स अनुरोध अजाक्स प्रतिक्रिया अजाक्स एक्सएमएल फ़ाइल अजाक्स पीएचपी अजाक्स एएसपी AJAX डेटाबेस अजाक्स अनुप्रयोग अजाक्स उदाहरण

जेएस JSON

JSON परिचय JSON सिंटैक्स जेएसओएन बनाम एक्सएमएल JSON डेटा प्रकार JSON पार्स JSON स्ट्रिंगिफ़ाई JSON ऑब्जेक्ट्स JSON सरणियाँ JSON सर्वर जेएसओएन पीएचपी जेएसओएन एचटीएमएल जेएसओएन जेएसओएनपी

जेएस बनाम jQuery

jQuery चयनकर्ता jQuery एचटीएमएल jQuery सीएसएस jQuery डोम

जेएस ग्राफिक्स

जेएस ग्राफिक्स जेएस कैनवास जे एस प्लॉटली जेएस चार्ट.जेएस जेएस गूगल चार्ट जेएस डी3.जेएस

जेएस उदाहरण

जेएस उदाहरण जेएस एचटीएमएल डोम जेएस एचटीएमएल इनपुट जेएस एचटीएमएल ऑब्जेक्ट्स जेएस एचटीएमएल इवेंट्स जेएस ब्राउज़र जे एस संपादक जे एस व्यायाम जे एस प्रश्नोत्तरी जेएस प्रमाणपत्र

जे एस संदर्भ

जावास्क्रिप्ट ऑब्जेक्ट्स एचटीएमएल डोम ऑब्जेक्ट्स


जावास्क्रिप्ट एरो फंक्शन

ES6 में एरो फ़ंक्शंस पेश किए गए थे।

एरो फ़ंक्शंस हमें छोटे फ़ंक्शन सिंटैक्स लिखने की अनुमति देते हैं:

let myFunction = (a, b) => a * b;

पहले:

hello = function() {
  return "Hello World!";
}

तीर समारोह के साथ:

hello = () => {
  return "Hello World!";
}

यह छोटा हो जाता है! यदि फ़ंक्शन में केवल एक कथन है, और कथन एक मान देता है, तो आप कोष्ठक औरreturn कीवर्ड को हटा सकते हैं:

डिफ़ॉल्ट रूप से एरो फ़ंक्शंस रिटर्न वैल्यू:

hello = () => "Hello World!";

नोट: यह तभी काम करता है जब फंक्शन में केवल एक स्टेटमेंट हो।

यदि आपके पास पैरामीटर हैं, तो आप उन्हें कोष्ठक के अंदर पास करते हैं:

पैरामीटर्स के साथ एरो फंक्शन:

hello = (val) => "Hello " + val;

वास्तव में, यदि आपके पास केवल एक पैरामीटर है, तो आप कोष्ठक को भी छोड़ सकते हैं:

कोष्ठक के बिना तीर समारोह:

hello = val => "Hello " + val;
this


किस बारे में this?

thisनियमित कार्यों की तुलना में तीर कार्यों में हैंडलिंग भी भिन्न होती है।

संक्षेप में, तीर कार्यों के साथ कोई बंधन नहीं है this

नियमित कार्यों में thisकीवर्ड उस वस्तु का प्रतिनिधित्व करता है जिसे फ़ंक्शन कहा जाता है, जो कि विंडो, दस्तावेज़, एक बटन या जो कुछ भी हो सकता है।

एरो फंक्शन के साथ thisकीवर्ड हमेशा उस ऑब्जेक्ट का प्रतिनिधित्व करता है जो एरो फंक्शन को परिभाषित करता है।

आइए अंतर को समझने के लिए दो उदाहरण देखें।

दोनों उदाहरण एक विधि को दो बार कॉल करते हैं, पहली बार जब पृष्ठ लोड होता है, और एक बार फिर जब उपयोगकर्ता एक बटन पर क्लिक करता है।

पहला उदाहरण एक नियमित फ़ंक्शन का उपयोग करता है, और दूसरा उदाहरण एक तीर फ़ंक्शन का उपयोग करता है।

परिणाम दिखाता है कि पहला उदाहरण दो अलग-अलग ऑब्जेक्ट (विंडो और बटन) देता है, और दूसरा उदाहरण विंडो ऑब्जेक्ट को दो बार लौटाता है, क्योंकि विंडो ऑब्जेक्ट फ़ंक्शन का "स्वामी" है।

उदाहरण

एक नियमित फ़ंक्शन के साथ thisउस ऑब्जेक्ट का प्रतिनिधित्व करता है जो फ़ंक्शन को कॉल करता है:

// Regular Function:
hello = function() {
  document.getElementById("demo").innerHTML += this;
}

// The window object calls the function:
window.addEventListener("load", hello);

// A button object calls the function:
document.getElementById("btn").addEventListener("click", hello);

उदाहरण

एक तीर फ़ंक्शन के साथ फ़ंक्शन के स्वामीthis का प्रतिनिधित्व करता है:

// Arrow Function:
hello = () => {
  document.getElementById("demo").innerHTML += this;
}

// The window object calls the function:
window.addEventListener("load", hello);

// A button object calls the function:
document.getElementById("btn").addEventListener("click", hello);

इन अंतरों को याद रखें जब आप कार्यों के साथ काम कर रहे हों। कभी-कभी नियमित कार्यों का व्यवहार वही होता है जो आप चाहते हैं, यदि नहीं, तो तीर कार्यों का उपयोग करें।


ब्राउज़र समर्थन

निम्न तालिका जावास्क्रिप्ट में एरो फ़ंक्शंस के लिए पूर्ण समर्थन के साथ पहले ब्राउज़र संस्करणों को परिभाषित करती है:

Chrome 45 Edge 12 Firefox 22 Safari 10 Opera 32
Sep, 2015 Jul, 2015 May, 2013 Sep, 2016 Sep, 2015