Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript डिबाउंस फ़ंक्शन समझाएं?


एक डिबाउंस फ़ंक्शन उस दर को सीमित करता है जिस पर कोई फ़ंक्शन फायर हो सकता है। उदाहरण के लिए, एक ऑटोकंप्लीट टेक्स्ट बार जो सर्वर को क्वेरी करता है। यदि आप प्रत्येक कीस्ट्रोक पर सर्वर को क्वेरी करते हैं, तो इसका अनावश्यक रूप से नेटवर्क और मेमोरी प्रभाव पड़ेगा। आप इसके बजाय क्या कर सकते हैं, दिए गए समय में इन कॉल्स की संख्या को सीमित करें।

आप अपना खुद का डिबाउंस फ़ंक्शन लिख सकते हैं जो आपके वास्तविक फ़ंक्शन को तर्क के रूप में लेता है और इसे रेट-लिमिटेड (थ्रॉटल्ड) तरीके से एक्ज़िक्यूट करता है।

उदाहरण

const debounce = (cb, time) => { let timeout; return function() { const wrapperFunc = () => cb.apply(this, arguments); clearTimeout(timeout); timeout = setTimeout(wrapperFunc, time); } }

यह फ़ंक्शन 2 तर्क लेता है: कॉलबैक और वह अंतराल जिसमें इसे कॉल किया जाना चाहिए। तो मान लीजिए पहली API कॉल 1ms पर गई और आपने समय 250ms सेट किया है, 251ms तक API पर नई कॉल नहीं जाएगी चाहे इस फ़ंक्शन को कितनी बार कॉल किया गया हो। आप इस कॉल का उपयोग करके अपने फ़ंक्शन कॉल को बदल सकते हैं।

  1. जावास्क्रिप्ट में फ़ंक्शन प्रोटोटाइप जावास्क्रिप्ट में फ़ंक्शन प्रोटोटाइप

    जावास्क्रिप्ट में बनाए गए फ़ंक्शन्स में हमेशा जावास्क्रिप्ट इंजन द्वारा प्रोटोटाइप प्रॉपर्टी जोड़ी जाती है। प्रोटोटाइप प्रॉपर्टी एक ऑब्जेक्ट है जिसमें डिफ़ॉल्ट रूप से कंस्ट्रक्टर प्रॉपर्टी होती है। फ़ंक्शन प्रोटोटाइप को निम्न द्वारा एक्सेस किया जा सकता है - functionName.prototype जब ऑब्जेक्ट्स को फ

  1. जावास्क्रिप्ट में 'Not a constructor function' एरर समझाया गया जावास्क्रिप्ट में 'Not a constructor function' एरर समझाया गया

    नॉट अ कंस्ट्रक्टर फ़ंक्शन एरर तब होता है जब हम किसी ऑब्जेक्ट या वेरिएबल को कंस्ट्रक्टर के रूप में उपयोग करते हैं जो कंस्ट्रक्टर नहीं है। जावास्क्रिप्ट में नॉट अ कंस्ट्रक्टर फ़ंक्शन एरर के लिए निम्नलिखित कोड है: उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta char

  1. जावास्क्रिप्ट में फ़ंक्शन बॉरोइंग जावास्क्रिप्ट में फ़ंक्शन बॉरोइंग

    call(), apply() और bind() का उपयोग जावास्क्रिप्ट में मेथड्स बॉरो करने के लिए किया जाता है। जावास्क्रिप्ट में मेथड्स बॉरो करने के लिए निम्नलिखित कोड है: उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport&qu