JavaScript-এ OOP-তে পুরানো শৈলীতে গোপনীয়তা

ব্যক্তিগত বৈশিষ্ট্য এবং পদ্ধতি ঘোষণা করা # চিহ্নের মাধ্যমে JavaScript-এ সম্প্রতি এসেছে। তার আগে, এটি করতে হয়েছিল একটি বিশেষ কৌশল ব্যবহার করে।

এই পদ্ধতির সারমর্ম হল একটি চুক্তি করা যে ব্যক্তিগত বৈশিষ্ট্যের নাম এবং পদ্ধতি অবশ্যই আন্ডারস্কোর চিহ্ন দিয়ে শুরু করতে হবে। বাস্তবে, এই নামগুলি ব্যক্তিগত হবে না, তবে আমরা চুক্তি করি যে আমরা ক্লাসের বাইরে থেকে সেগুলি ব্যবহার করব না।

চেষ্টা করে দেখা যাক। আসুন এই শৈলীতে একটি ব্যক্তিগত বৈশিষ্ট্য তৈরি করি:

javascriptclass User {
  constructor(name) {
    this._name = name;
  }
  
  show() {
    return this._name;
  }
}

ক্লাসের একটি অবজেক্ট তৈরি করা যাক:

javascriptlet user = new User('john', 'smit');

আসুন সেই পদ্ধতিটি কল করি যা মান প্রদর্শন করে আমাদের বৈশিষ্ট্যের:

javascriptconsole.log(user.show());

ক্লাসের বাইরে থেকে বৈশিষ্ট্যে অ্যাক্সেস করার চেষ্টা কোনও ত্রুটির কারণ হবে না:

javascriptconsole.log(user._name); // কোন ত্রুটি নেই
Задание 1

নিম্নলিখিত কোডে, করুন বৈশিষ্ট্যগুলি ব্যক্তিগত:

javascriptclass Employee {
  constructor(name, salary) {
    this._name = name;
    this._salary = salary;
  }
  
  getName() {
    return this._name;
  }
  getSalary() {
    return this._salary;
  }
}
Задание 2

নিম্নলিখিত কোডে, সহায়ক পদ্ধতিটি করুন ব্যক্তিগত:

javascriptclass Employee {
  constructor(name, salary) {
    this.name = name;
    this.salary = salary;
  }
  
  getSalary() {
    return this._addSign(this.salary);
  }
  
  _addSign(num) {
    return num + '
;
  }
}