2011-10-17 17 views
5

संभव डुप्लिकेट:
Javascript Array.forEach HowTo break?Coffeescript: एक foreach लूप के बाहर तोड़

को देखते हुए मैं एक foreach पाश है, मैं कैसे मामले एक्स में है कि पाश से बाहर तोड़ करते सच है ?

उदाहरण के लिए:

user.forEach (x,i) -> 

        if x.status == "available" 
         -- I want to break here - 

धन्यवाद

+1

यह वास्तव में यहां शामिल है: http://stackoverflow.com/questions/2641347/javascript-array-foreach-howto-break –

उत्तर

10

असल में, नहीं है। forEach अनिवार्य रूप से "कार्यात्मक" होना है। आप इसे अपवाद के साथ तोड़ सकते हैं, लेकिन अपवादों को "असाधारण" स्थितियों के लिए उपयोग किया जाना चाहिए, प्रवाह को नियंत्रित नहीं करना चाहिए।

यदि आप तोड़ने का मतलब रखते हैं, तो इसका मतलब यह नहीं है कि एक कार्यात्मक रूप है, तो आप एक पुनरावृत्ति का मतलब है। for लूप का उपयोग करें।

+0

या वैकल्पिक रूप से, jQuery की [$ .each] (http: // api) जैसे कुछ का उपयोग करें .jquery.com/jQuery.each /), जो आप 'झूठी' वापस लौटते हैं तो टूट जाएगा। –

+0

मैं इसके साथ सहमत हूं, लेकिन मुझे यकीन नहीं है कि शब्द "कार्यात्मक" सही है, यहां तक ​​कि डरावनी उद्धरणों में भी; 'EEach' का पूरा बिंदु साइड इफेक्ट्स बनाना है। –

+0

इसहाक, लूप बॉडी के साथ बंद होने के साथ, प्रत्येक के साथ तुलना करें, उदाहरण के लिए, मानचित्र। –

संबंधित मुद्दे