TypeScript:
सहयोगी अरेज़ का उपयोग करना
कैसे करें:
TypeScript में एसोसिएटिव ऐरे बनाना और उपयोग करना सरल है। यहाँ एक मूल रन-थ्रू है:
// एसोसिएटिव ऐरे घोषित करना
let user: { [key: string]: string } = {};
// डेटा जोड़ना
user["name"] = "Jane Doe";
user["email"] = "[email protected]";
console.log(user);
आउटपुट:
{ name: 'Jane Doe', email: '[email protected]' }
कुंजी-मान जोड़ों के पार इटरेटिंग भी आसान है:
for (let key in user) {
console.log(key + ": " + user[key]);
}
आउटपुट:
name: Jane Doe
email: jane@example.com
और यदि आप विविध डाटा प्रकारों के साथ काम कर रहे हैं, तो TypeScript की टाइप सिस्टम काम आती है:
let mixedTypes: { [key: string]: string | number } = {};
mixedTypes["name"] = "John Doe";
mixedTypes["age"] = 30;
console.log(mixedTypes);
आउटपुट:
{ name: 'John Doe', age: 30 }
गहराई से जानकारी
TypeScript में, हम जिन्हें एसोसिएटिव ऐरे कहते हैं, वे मूल रूप से ऑब्जेक्ट्स हैं। पारंपरिक रूप से, पीएचपी जैसी भाषाओं में, एसोसिएटिव ऐरे एक मौलिक प्रकार हैं, लेकिन जावास्क्रिप्ट (और विस्तार से, TypeScript) इस उद्देश्य के लिए ऑब्जेक्ट्स का उपयोग करता है। यह दृष्टिकोण एक ताकत और एक सीमा दोनों है। ऑब्जेक्ट्स मानों से स्ट्रिंग्स को जोड़ने के लिए एक बेहद डायनामिक संरचना प्रदान करते हैं, लेकिन इनका उपयोग पारंपरिक अर्थ में ‘ऐरेज़’ के रूप में नहीं किया जाना चाहिए। उदाहरण के लिए, आप इन ऑब्जेक्ट्स पर सीधे ऐरे मेथड्स जैसे कि push
या pop
का उपयोग नहीं कर सकते।
जहाँ आपको कुंजी-मान जोड़ों के साथ आर्डर्ड संग्रहों की आवश्यकता होती है और ऐरे-जैसे ऑपरेशंस चाहिए, TypeScript (और आधुनिक जावास्क्रिप्ट) आपको Map
ऑब्जेक्ट प्रदान करता है:
let userMap = new Map<string, string>();
userMap.set("name", "Jane Doe");
userMap.set("email", "[email protected]");
userMap.forEach((value, key) => {
console.log(key + ": " + value);
});
जबकि TypeScript की टाइप सिस्टम और ES6 फीचर्स जैसे Map
शक्तिशाली विकल्प प्रदान करते हैं, ऑब्जेक्ट लिटरल्स के रूप में एसोसिएटिव ऐरे का उपयोग कैसे करें, यह समझना स्थितियों के लिए उपयोगी है जहाँ ऑब्जेक्ट लिटरल्स अधिक कुशल होते हैं या जब JSON डाटा संरचनाओं के साथ काम कर रहे हों। यह सब सही उपकरण के चुनाव के बारे में है।