Ιδιωτικές Μέθοδοι στην ΑΝΠ στο JavaScript
Οι ιδιωτικές δεν μπορούν να είναι μόνο ιδιότητες, αλλά και μέθοδοι. Συνήθως οι βοηθητικές μέθοδοι γίνονται ιδιωτικές, ώστε να μην μπορούν κατά λάθος να κληθούν από έξω από την κλάση.
Ας δούμε ένα παράδειγμα. Ας υποθέσουμε ότι έχουμε την ακόλουθη κλάση:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#name;
}
}
Ας κάνουμε σε αυτήν την κλάση μια ιδιωτική μέθοδο, η οποία θα παίρνει ως παράμετρο μια συμβολοσειρά και θα κάνει κεφαλαίο το πρώτο της γράμμα:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#name;
}
#cape(str) {
return str[0].toUpperCase() + str.slice(1);
}
}
Ας χρησιμοποιήσουμε τη βοηθητική μας μέθοδο μέσα σε μια άλλη μέθοδο:
class User {
#name;
constructor(name) {
this.#name = name;
}
show() {
return this.#cape(this.#name);
}
#cape(str) {
return str[0].toUpperCase() + str.slice(1);
}
}
Ας ελέγξουμε. Ας δημιουργήσουμε ένα αντικείμενο της κλάσης μας:
let user = new User('john');
Ας καλέσουμε τη δημόσια μέθοδο, που χρησιμοποιεί τη βοηθητική:
console.log(user.show());
Στον ακόλουθο κώδικα, κάντε τη βοηθητική μέθοδο ιδιωτική:
class Employee {
constructor(name, salary) {
this.name = name;
this.salary = salary;
}
getSalary() {
return this.addSign(this.salary);
}
addSign(num) {
return num + '€';
}
}