टाइपस्क्रिप्ट में स्टैटिक गुण

आइए देखें कि ऑब्जेक्ट्स के अंदर स्टैटिक गुणों तक कैसे पहुंचा जाए।

मान लीजिए कि हमारे पास स्टैटिक गुण वाला निम्नलिखित क्लास है:

typescriptclass User {
  public name: string;
  public static salary: number = 1000;
  
  constructor(name: string) {
    this.name = name;
  }
}

आइए अब एक मेथड बनाते हैं जो कुल वेतन दिखाता है:

typescriptclass User {
  public name: string;
  public static salary: number = 1000;
  
  constructor(name: string) {
    this.name = name;
  }
  
  getSalary(): number {
    return User.salary; // क्लास के नाम से एक्सेस कर रहे हैं
  }
}

आइए अब एक मेथड बनाते हैं जो कुल वेतन बदलता है:

typescriptclass User {
  public name: string;
  public static salary: number = 1000;
  
  constructor(name: string) {
    this.name = name;
  }
  
  getSalary(): number {
    return User.salary;
  }
  
  setSalary(salary: number) {
    User.salary = salary;
  }
}

स्टैटिक गुण अलग-अलग ऑब्जेक्ट्स के लिए सामान्य होंगे। इसका मतलब है कि एक ऑब्जेक्ट में प्रॉपर्टी बदलने पर, यह दूसरे में भी बदल जाएगी। आइए इसे चेक करते हैं।

हम अपने क्लास के दो ऑब्जेक्ट बनाते हैं:

typescriptlet user1: User = new User('john');
let user2: User = new User('eric');

आइए पहले यूजर के लिए वेतन बदलते हैं:

typescriptuser1.setSalary(2000);

चलिए चेक करते हैं कि वेतन दूसरे यूजर के लिए भी बदल गया है:

typescriptconsole.log(user2.getSalary()); // 2000

चलिए चेक करते हैं कि वेतन क्लास के खुद के प्रॉपर्टी में भी बदल गया है:

typescriptconsole.log(User.salary); // 2000
Задание 1

क्लास Student में एक स्टैटिक प्रॉपर्टी university जोड़ें। ऑब्जेक्ट डिक्लेयर किए बिना इस प्रॉपर्टी को आउटपुट करें।