TypeScript: ऑब्जेक्ट बनाते समय (literal) उसका type कैसे सही से set करें?
सभी को नमस्ते! मैंने अभी TypeScript सीखना शुरू किया है और एक अजीब स्थिति का सामना किया। जब मैं literal (curly braces) के माध्यम से ऑब्जेक्ट बनाता हूँ, तो मैं स्पष्ट रूप से उसका type बताना चाहता हूँ, ताकि TypeScript जाँच करे कि सभी fields मौजूद हैं और सही type के हैं।
मैं यह कर रहा हूँ:
```typescript
interface User {
name: string;
age: number;
}
// ऑब्जेक्ट बनाते समय type बताने की कोशिश
const user: User = {
name: "Анна",
age: 25,
// मान लीजिए मैंने गलती से एक extra field जोड़ दिया
role: "admin"
};
```
मुझे उम्मीद थी कि TypeScript `role` पर error देगा, क्योंकि यह `User` interface में नहीं है। लेकिन कभी-कभी यह चुप रहता है या अजीब व्यवहार करता है। और मैंने देखा कि `as User` या `const user = { name: "Анна", age: 25 } satisfies User` का उपयोग किया जा सकता है। कौन सा तरीका सही है? क्या अंतर है? और TypeScript को सख्ती से कैसे जाँचने दें कि ऑब्जेक्ट में कोई extra fields नहीं हैं? पहले से धन्यवाद!
<<>>
भ्रम क्यों होता है और विभिन्न तरीके कैसे काम करते हैं
आप एक क्लासिक समस्या का सामना कर रहे हैं