जेनरेटर.थ्रो () मेथड का उपयोग यील्ड में एरर पास करने के लिए किया जाता है। एक त्रुटि फेंककर और गुणों और मूल्य के साथ लौटाने वाली वस्तु को फेंकने के बाद जनरेटर निष्पादन को फिर से शुरू करता है।
जावास्क्रिप्ट में जनरेटर.थ्रो () के लिए कोड निम्नलिखित है -
उदाहरण
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; } .result,.sample { font-size: 18px; font-weight: 500; color: rebeccapurple; } .result { color: red; } </style> </head> <body> <h1>generator.throw() method in Javascript</h1> <div class="sample"></div< <div class="result"></div> <button class="Btn">Display Num</button> <button class="Btn">Throw Error</button> <h3>Click on the above buttons to display num or throw error</h3> <script> let BtnEle = document.querySelectorAll(".Btn"); let resEle = document.querySelector(".result"); let sampleEle = document.querySelector(".sample"); function* increment() { let num = 0; while (true) { try { yield num++; } catch (err) { resEle.innerHTML = "Error = " + err + "<br>"; } } } let inc = increment(); BtnEle[0].addEventListener("click", () => { sampleEle.innerHTML = inc.next().value + " "; }); BtnEle[1].addEventListener("click", () => { inc.throw(new Error("Some error occured")); }); </script> </body> </html>
आउटपुट
उपरोक्त कोड निम्न आउटपुट उत्पन्न करेगा -
'डिस्प्ले नंबर' बटन पर कुछ बार क्लिक करने पर -
'थ्रो एरर' बटन पर क्लिक करने पर -