Metodi statici di utilità
Fa parte della sezione Programmazione orientata agli oggetti del percorso JavaScript di Coddy. Lezione 33 di 56.
I metodi statici sono funzioni di utilità che appartengono alla classe stessa anziché alle sue istanze. Sono utili per le funzioni che non richiedono l'accesso a dati specifici delle istanze.
Creiamo una classe con un metodo di utilità statico:
class MathHelper {
// Definisci un metodo statico
static square(number) {
return number * number;
}
}Per chiamare un metodo statico, usi direttamente il nome della classe:
// Chiama il metodo statico senza creare un'istanza
const result = MathHelper.square(5);
console.log(result); // 25Nota che non abbiamo dovuto creare una nuova istanza con new MathHelper(). I metodi statici sono perfetti per le funzioni di utilità che eseguono operazioni senza bisogno dei dati di un'istanza.
Sfida
Crea una classe chiamata StringUtils con un metodo statico chiamato capitalize che prende una stringa come argomento e restituisce la stessa stringa con la prima lettera maiuscola. Per esempio, se l’input è "javascript", il metodo dovrebbe restituire "Javascript". Esporta questa classe.
- Verifica se la stringa è vuota:
if (!str || str.length === 0)(Senza questo controllo, una stringa vuota potrebbe causare problemi).!strverifica se ènull/undefined(previene gli errori)str.length === 0verifica se la stringa è vuota (restituisce "" invece di causare un errore)
- Ottieni il primo carattere:
str.charAt(0) - Convertilo in maiuscolo:
.toUpperCase() - Ottieni il resto della stringa:
str.slice(1)(dalla posizione 1 fino alla fine) - Combina: primo carattere maiuscolo + resto della stringa
Provalo tu
import { StringUtils } from './stringUtils.js';
// Non modificare il codice qui sotto
console.log(StringUtils.capitalize("programming"));Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Programmazione orientata agli oggetti
1Oggetti e la keyword this
Ripasso rapido: oggettiAggiungere metodi agli oggettiCapire la keyword thisFunzioni costruttriciLa keyword newSfida di ripasso7Ereditarietà e parola chiave extends
EreditarietàLa relazione «è un»La parola chiave extendsIl metodo super()Ereditare proprietà e metodiSfida di ripasso13Composizione vs. ereditarietà
«Ha-un» vs. «è-un»I limiti dell’ereditarietà profondaCostruire oggetti2Organizzare il codice
Cosa sono i moduli?Esportare con exportImportare con importExport predefiniti vs. export nominati5Incapsulamento e accesso
IncapsulamentoCampi di classe pubblici e privatiMetodi privatiSfida di riepilogo8Organizzare il codice OOP
Organizzare le classi in moduli11Progetto: Un renderizzatore di forme
Configurazione: classe Shape ed esportazioneEreditarietà della classe CircleOverride e metodo areaContatore statico di Shape14Sistema di gestione della biblioteca
Progettare la bibliotecaClasse Book con composizioneValidazione dell'autore del libro9Metodi e proprietà statici
A livello di classe o di istanzaProprietà staticheMetodi statici di utilitàSfida di riepilogoEsercitati da solo: Compilatore JavaScript online