Avatar ·

استخدام كائنات TypeScript كقواميس (Dictionary) مثل C#

مرحبًا! أنا أنتقل من C# إلى TypeScript ولا أستطيع فهم كيفية تنفيذ ما يعادل Dictionary بشكل صحيح. في C# أكتب: ```csharp var dict = new Dictionary(); dict.Add("apple", 5); dict.Add("banana", 3); Console.WriteLine(dict["apple"]); // 5 ``` في TypeScript أحاول القيام بذلك: ```typescript let dict = {}; dict["apple"] = 5; dict["banana"] = 3; console.log(dict["apple"]); // 5 ``` لكن TypeScript يشتكي من `dict["apple"]` — يقول أن العنصر له نوع `any` ضمنيًا. إذا قمت بكتابة النوع صراحة: ```typescript let dict: { [key: string]: number } = {}; ``` فإن كل شيء يعمل، لكنني لا أفهم: 1. كيف أعلن عن مثل هذا القاموس بشكل صحيح؟ 2. كيف أتحقق مما إذا كان المفتاح موجودًا؟ 3. كيف أتكرر على جميع عناصر القاموس؟ 4. هل هناك فئة Dictionary مدمجة في TypeScript؟ أخبرني، كيف يتم العمل مع الكائنات كقواميس في TypeScript؟ أحتاج إلى تخزين أزواج "مفتاح-قيمة"، حيث المفاتيح هي strings والقيم هي كائنات من كلاسي User.