मॉड्यूल पाठ (4/4)
संग्रहों पर बार-बार विचार करना
संग्रह में हेरफेर करने का मतलब लगभग हमेशा पुनरावृत्त करना होता है: आगे बढ़ना तत्व एक-एक करके और प्रत्येक के लिए कुछ न कुछ करते हुए। इस पाठ में हम बुनियादी वाक्यविन्यास को देखें; कार्यात्मक सरणियों मॉड्यूल में (मानचित्र / फ़िल्टर/कम करें) हम उन्हें और अधिक घोषणात्मक रूप से लिखना सीखेंगे।
सरणियों के लिए for…of
यह वह लूप है जिसका उपयोग आप किसी सरणी को पुनरावृत्त करने के लिए लगभग हमेशा करना चाहेंगे: यह प्रत्येक चरण पर मूल्य निकालता है।
const colori = ['rosso', 'verde', 'blu'];
for (const c of colori) {
console.log(c);
}
// 'rosso'
// 'verde'
// 'blu'यदि आपको भी सूचकांक की आवश्यकता है, तो entries() का उपयोग करें:
for (const [i, c] of colori.entries()) {
console.log(`${i}: ${c}`);
}
// '0: rosso', '1: verde', '2: blu'वस्तुओं के लिए for…in - सावधानी के साथ
for…in किसी ऑब्जेक्ट की कुंजियाँ (स्ट्रिंग्स) को पुनरावृत्त करता है:
const utente = { nome: 'Anna', eta: 28 };
for (const k in utente) {
console.log(`${k} = ${utente[k]}`);
}Object.keys / values / entries
किसी वस्तु को पुनरावृत्त करने का ये सबसे मजबूत तरीका है। वे सरणियाँ लौटाते हैं, इत्यादि
वे for…of के साथ बहुत अच्छी तरह से जुड़ते हैं:
const utente = { nome: 'Anna', eta: 28 };
Object.keys(utente); // ['nome', 'eta']
Object.values(utente); // ['Anna', 28]
Object.entries(utente); // [['nome', 'Anna'], ['eta', 28]]
for (const [k, v] of Object.entries(utente)) {
console.log(`${k} → ${v}`);
}क्लासिक for
"पुराना स्कूल" for अभी भी मौजूद है। आप इसका प्रयोग शायद ही कभी करेंगे, लेकिन यह उपयोगी है
जब आपको सूचकांक पर अच्छे नियंत्रण की आवश्यकता होती है (तत्वों को छोड़ना, पुनरावृत्त करना
पीछे की ओर):
for (let i = 0; i < colori.length; i++) {
console.log(i, colori[i]);
}
// Backwards
for (let i = colori.length - 1; i >= 0; i--) {
console.log(colori[i]);
}इसे अजमाएं
दिए गए `संख्या = [3, 5, 7]`, for...of के साथ पुनरावृत्त करके सभी तत्वों (15) के योग की गणना करें। अंतिम अभिव्यक्ति को योग का मूल्यांकन करना चाहिए।
संकेत दिखाएँ
के लिए (संख्याओं का स्थिरांक n) { योग = योग + n; }
3 प्रयासों के बाद समाधान उपलब्ध है
व्यायाम की समीक्षा करें
दिया गया `कीमतें = { मेला: 0.4, प्रति: 0.55, केला: 0.3 }`, ऑब्जेक्ट.कीज़ का उपयोग करके ऑब्जेक्ट (3) में प्रविष्टियों की कुल संख्या लौटाएँ।
संकेत दिखाएँ
ऑब्जेक्ट.कीज़(ओबीजे) एक सरणी लौटाता है; .length बताती है कि कितनी कुंजियाँ हैं।
3 प्रयासों के बाद समाधान उपलब्ध है