संभव डुप्लिकेट:
How do JavaScript closures work?ही जे एस बंद पाश मुद्दा - लेकिन इतना के जवाब काम नहीं कर रहे
मैं सभी मिलियन वही पुरानी जावास्क्रिप्ट बंद पाश मुद्दे के डुप्लिकेट पढ़ा है । मैंने सोचा कि मैं उन्हें समझ गया हूं, और आज तक बिना किसी मुद्दे के महीनों के बंद होने का उपयोग कर रहा हूं। मैं फंस गया हूँ
for (var i in groups){
for(var j in groups[i]){
$(unique_form).die('submit').live('submit'), function{
function (groups2, i2, j2){
return function(){alert(groups2[i2][j2])}
}(groups, i, j)
}
});
}
}
}
जब मैं प्रत्येक अद्वितीय रूप प्रस्तुत करता हूं - मैं समूहों के अंतिम तत्व [i] [j] के लिए अलर्ट प्राप्त करता रहता हूं। जाहिर है, मैं कुछ बेवकूफ कर रहा हूँ, यह क्या है? मैंने सोचा कि अज्ञात फ़ंक्शन समूह 2, i2, और j2 बनाकर मैं समस्या को हल कर रहा था।
क्लोजर ऑब्जेक्ट्स (कम से कम जावास्क्रिप्ट में) के लिए काम नहीं करते हैं क्योंकि ऑब्जेक्ट का केवल संदर्भ संलग्न है। – Niko
आप उस विचित्र कोड के साथ क्या करने की कोशिश कर रहे हैं ?! – gdoron
बंद होने पर ईवेंट हैंडलर के बाहर होना चाहिए ताकि संदर्भ हैंडलर के भीतर संदर्भ मौजूद हों। – Jasper