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

जेएस होम जे एस परिचय जे एस कहाँ करने के लिए जेएस आउटपुट जेएस स्टेटमेंट्स जेएस सिंटेक्स जे एस टिप्पणियाँ जेएस चर जे एस लेट जेएस कॉन्स्ट जेएस ऑपरेटर्स जे एस अंकगणित जेएस असाइनमेंट जेएस डेटा प्रकार जे एस कार्य जेएस ऑब्जेक्ट्स जेएस इवेंट्स जे एस स्ट्रिंग्स जे एस स्ट्रिंग तरीके जे एस स्ट्रिंग खोज जे एस स्ट्रिंग टेम्पलेट्स जेएस नंबर जेएस संख्या के तरीके जे एस सरणी जेएस सरणी के तरीके जेएस ऐरे सॉर्ट जेएस सरणी पुनरावृत्ति जेएस ऐरे कॉन्स्ट जे एस तिथियाँ जेएस तिथि प्रारूप जेएस तिथि प्राप्त करने के तरीके जे एस दिनांक सेट तरीके जे एस मठ जे एस रैंडम जे एस बूलियन्स जेएस तुलना जे एस शर्तें जे एस स्विच जेएस लूप फॉर 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.जेएस

जेएस उदाहरण

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

जे एस संदर्भ

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


जावास्क्रिप्ट फ़ंक्शन आमंत्रण


जावास्क्रिप्ट के अंदर कोड functionतब निष्पादित होगा जब "कुछ" इसे आमंत्रित करेगा।


जावास्क्रिप्ट फ़ंक्शन को लागू करना

जब फ़ंक्शन परिभाषित किया जाता है तो फ़ंक्शन के अंदर कोड निष्पादित नहीं होता है ।

किसी फ़ंक्शन के अंदर कोड निष्पादित किया जाता है जब फ़ंक्शन लागू किया जाता है ।

"एक फ़ंक्शन को कॉल करें " के बजाय " एक फ़ंक्शन को कॉल करें " शब्द का उपयोग करना आम है

"फ़ंक्शन पर कॉल करें", "फ़ंक्शन प्रारंभ करें", या "फ़ंक्शन निष्पादित करें" कहना भी आम है।

इस ट्यूटोरियल में, हम इनवोक का उपयोग करेंगे , क्योंकि बिना कॉल किए जावास्क्रिप्ट फंक्शन को इनवाइट किया जा सकता है।


एक समारोह को एक समारोह के रूप में आमंत्रित करना

उदाहरण

function myFunction(a, b) {
  return a * b;
}
myFunction(10, 2);           // Will return 20

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

एचटीएमएल में डिफ़ॉल्ट ग्लोबल ऑब्जेक्ट एचटीएमएल पेज ही है, इसलिए उपरोक्त फ़ंक्शन एचटीएमएल पेज पर "संबंधित" है।

ब्राउज़र में पेज ऑब्जेक्ट ब्राउज़र विंडो है। उपरोक्त फ़ंक्शन स्वचालित रूप से एक विंडो फ़ंक्शन बन जाता है।

myFunction() और window.myFunction() एक ही कार्य है:

उदाहरण

function myFunction(a, b) {
  return a * b;
}
window.myFunction(10, 2);    // Will also return 20

जावास्क्रिप्ट फ़ंक्शन को लागू करने का यह एक सामान्य तरीका है, लेकिन बहुत अच्छा अभ्यास नहीं है।
वैश्विक चर, विधियाँ, या कार्य आसानी से वैश्विक वस्तु में नाम संघर्ष और बग बना सकते हैं।



यह कीवर्ड _

जावास्क्रिप्ट में, जिसे this, कहा जाता है, वह वस्तु है जो वर्तमान कोड का "मालिक" है।

का मान this, जब किसी फ़ंक्शन में उपयोग किया जाता है, तो वह ऑब्जेक्ट होता है जो फ़ंक्शन का "मालिक" होता है।

ध्यान दें कि thisएक चर नहीं है। यह एक कीवर्ड है। आप का मान नहीं बदल सकते this

युक्ति: JS this Keywordthis पर कीवर्ड के बारे में और पढ़ें


वैश्विक वस्तु

जब किसी फ़ंक्शन को स्वामी ऑब्जेक्ट के बिना कॉल किया जाता है, तो का मान this वैश्विक ऑब्जेक्ट बन जाता है।

एक वेब ब्राउज़र में वैश्विक वस्तु ब्राउज़र विंडो है।

यह उदाहरण विंडो ऑब्जेक्ट को इसके मान के रूप में देता है this:

उदाहरण

let x = myFunction();            // x will be the window object

function myFunction() {
  return this;
}

किसी फ़ंक्शन को वैश्विक फ़ंक्शन के रूप में आमंत्रित करना, इसका मान वैश्विक ऑब्जेक्ट होने का कारण बनता है।
एक चर के रूप में विंडो ऑब्जेक्ट का उपयोग करना आपके प्रोग्राम को आसानी से क्रैश कर सकता है।


एक फ़ंक्शन को एक विधि के रूप में आमंत्रित करना

जावास्क्रिप्ट में आप फ़ंक्शन को ऑब्जेक्ट विधियों के रूप में परिभाषित कर सकते हैं।

निम्न उदाहरण एक ऑब्जेक्ट ( myObject ) बनाता है, जिसमें दो गुण ( firstName और lastName ), और एक विधि ( fullName ) होती है:

उदाहरण

const myObject = {
  firstName:"John",
  lastName: "Doe",
  fullName: function () {
    return this.firstName + " " + this.lastName;
  }
}
myObject.fullName();         // Will return "John Doe"

FullName विधि एक फ़ंक्शन है फ़ंक्शन ऑब्जेक्ट से संबंधित है। myObject फ़ंक्शन का स्वामी है।

, नाम thisकी वस्तु वह वस्तु है जो जावास्क्रिप्ट कोड का "मालिक" है। इस मामले में का मान myObjectthis है

झसे आज़माओ! का मान वापस करने के लिए पूर्णनाम विधि बदलें this:

उदाहरण

const myObject = {
  firstName:"John",
  lastName: "Doe",
  fullName: function () {
    return this;
  }
}

// This will return [object Object] (the owner object)
myObject.fullName();

किसी फ़ंक्शन को ऑब्जेक्ट विधि के रूप में आमंत्रित करना, का मान this ऑब्जेक्ट होने का कारण बनता है।


फंक्शन कंस्ट्रक्टर के साथ फंक्शन को इनवाइट करना

यदि कोई फ़ंक्शन आमंत्रण newकीवर्ड से पहले है, तो यह एक कन्स्ट्रक्टर आमंत्रण है।

ऐसा लगता है कि आप एक नया फ़ंक्शन बनाते हैं, लेकिन चूंकि जावास्क्रिप्ट फ़ंक्शन ऑब्जेक्ट हैं, आप वास्तव में एक नई ऑब्जेक्ट बनाते हैं:

उदाहरण

// This is a function constructor:
function myFunction(arg1, arg2) {
  this.firstName = arg1;
  this.lastName  = arg2;
}

// This creates a new object
const myObj = new myFunction("John", "Doe");

// This will return "John"
myObj.firstName;

एक कन्स्ट्रक्टर आमंत्रण एक नई वस्तु बनाता है। नई वस्तु को इसके निर्माता से गुण और विधियाँ विरासत में मिलती हैं।

कंस्ट्रक्टर में कीवर्ड का thisकोई मूल्य नहीं है।
जब फ़ंक्शन का आह्वान किया जाता है, तो बनाई गई नई वस्तु का मान thisहोगा।