Quando vogliamo aggiungere un metodo a una classe esistente dobbbiamo usare una funzionalità di TypeScript nota come module augmentation. Vediamo prima il codice e poi lo analizziamo.
declare global { interface String { formatByPosition(...values: any[]): string; } } String.prototype.formatByPosition = function (...values: any[]) { return this.replace(/{(\d+)}/g, function (match, number) { return (values[number]) || match; }); };
Nella prima parte del codice dichiariamo nel namespace globale l'interfaccia String alla quale aggungiamo un metodo formatByPosition. Dopo aver aggiunto il metodo all'interfaccia String, dobbiamo aggiungere la sua implementazione al prototype della classe String.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Creare un'applicazione React e configurare Tailwind CSS
Code scanning e advanced security con Azure DevOps
Utilizzare database e servizi con gli add-on di Container App
Inizializzare i container in Azure Container Apps
Utilizzare la libreria Benchmark.NET per misurare le performance
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Filtrare e rimuovere gli elementi dalla cache del browser tramite le API JavaScript
Eseguire operazioni sui blob con Azure Storage Actions
Implementare l'infinite scroll con QuickGrid in Blazor Server
Load test di ASP.NET Core con k6
Usare Refit e Polly in Blazor per creare client affidabili e fortemente tipizzati
Utilizzare HiLo per ottimizzare le insert in un database con Entity Framework