केवल एक अंतर जो मैं मानचित्र और फ़ॉरच में देखता हूं, वह map
यह है कि एक सरणी लौटा रहा है और forEach
नहीं है। हालाँकि, मैं भी forEach
विधि " func.call(scope, this[i], i, this);
" की अंतिम पंक्ति को नहीं समझता । उदाहरण के लिए, " this
" और " scope
" एक ही वस्तु this[i]
का i
संदर्भ नहीं है और लूप में वर्तमान मूल्य का उल्लेख नहीं है ?
मैंने किसी अन्य पोस्ट पर ध्यान दिया "किसी ने कहा" forEach
जब आप सूची के प्रत्येक तत्व के आधार पर कुछ करना चाहते हैं, तो आप उदाहरण के लिए, पृष्ठ में कुछ चीजें जोड़ सकते हैं। अनिवार्य रूप से, यह बहुत अच्छा है जब आप "साइड इफेक्ट्स" चाहते हैं। मैं नहीं जानता कि साइड इफेक्ट्स का क्या मतलब है।
Array.prototype.map = function(fnc) {
var a = new Array(this.length);
for (var i = 0; i < this.length; i++) {
a[i] = fnc(this[i]);
}
return a;
}
Array.prototype.forEach = function(func, scope) {
scope = scope || this;
for (var i = 0, l = this.length; i < l; i++) {
func.call(scope, this[i], i, this);
}
}
अंत में, जावास्क्रिप्ट में इन विधियों के लिए कोई वास्तविक उपयोग हैं (क्योंकि हम डेटाबेस को अपडेट नहीं कर रहे हैं) संख्याओं में हेरफेर करने के अलावा:
alert([1,2,3,4].map(function(x){ return x + 1})); //this is the only example I ever see of map in javascript.
किसी भी उत्तर के लिए धन्यवाद।
map
और जैसे देशी जावास्क्रिप्ट की एक फ़ंक्शन परिभाषा कैसे पा सकते हैंforEach
? मुझे Google से प्राप्त होने वाले सभी उपयोग विनिर्देशों और ट्यूटोरियल हैं।