मान लें कि मेरे पास एक फ़ंक्शन और सरणी है। मैं सरणी में प्रत्येक प्रविष्टि में फ़ंक्शन को लागू करके सरणी को संशोधित करना चाहता हूं। फ़ंक्शन सीधे मान को संशोधित नहीं करता है; यह एक नया मूल्य देता है।node.js या जावास्क्रिप्ट में किसी सरणी को मैप करने का क्लीन तरीका
छद्म कोड में,
for (entry in array) {
entry = function(entry);
}
के कुछ तरीके हैं यह मेरे लिए हुआ करने के लिए कर रहे हैं: के बाद से मैं Node.js उपयोग कर रहा हूँ
for (var i = 0; i < arr.length; i++) {
arr[i] = fn(i);
}
या, और अंडरस्कोर में बनाया गया है :
arr = _.map(arr, fn);
लेकिन यह दोनों थोड़ा उलझन लगते हैं। मानक "के लिए" ब्लॉक अत्यधिक वर्बोज़ महसूस करता है, और _.map फ़ंक्शन पूरे सरणी को फिर से असाइन करता है ताकि अक्षम हो।
आप यह कैसे करेंगे?
हाँ, मुझे पता है कि मैं इस :)
बस अंडरस्कोर-फ़ंक्शन का उपयोग करें जब तक कि आप निश्चित न हों कि यह एक प्रदर्शन समस्या है। यह बहुत पठनीय और साफ है, इसलिए जब तक कि यह वास्तव में एक मुद्दा नहीं है, आपकी "अक्षमता की भावना" आपको अधिक दबाव वाले मुद्दों पर जाने से नहीं रोकती है :) – PatrikAkerstrand
पूरी तरह से सच है! मैं अभी भी उत्सुक हूँ, फिर भी। – Eric