<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Questo è stato originariamente pubblicato qui: JSL orientato agli oggetti - Esempi? ma volevo isolare questo argomento di OOP e il concetto dell'oggetto Datatable.
Innanzitutto, a mio avviso, il datatable stesso può già essere pensato come un oggetto.
dt1 = NewTable () - Crea una nuova "istanza" di Datatable
ShowProperties (dt1) - Mostra tutte le "proprietà" e "metodi" per l'oggetto Datatable dt1.
Sono incuriosito di sapere se la community potrebbe trovare utili estensioni Datatable. Si può pensare di "estendere" l'oggetto Datatable esistente con proprietà e metodi aggiuntivi, come nella risposta di Drew. Ho pensato di avere funzionalità aggiuntive come:
1. Rowstate Handler.
2. Colonna e riga, Aggiungi / Elimina rilevamento.
3. Cronologia delle modifiche alla cella di tabella.
4. Databox (Displaybox)
Quindi, nella terminologia OOP, potrebbe apparire un possibile "costruttore" per DatatableObject, dove vengono dichiarate le variabili membro e le funzioni.
L'idea alla base della dichiarazione dell'oggetto in questo modo, non solo stabilisce un'entità replicabile, ma consente anche di vedere chiaramente le funzioni e i nomi di espressioni che diventeranno utilizzabili una volta definiti completamente.

La mia versione di NewDatatableObject (elenco parziale). Qui è dove le funzioni membro sono effettivamente definite:


Per esempio, creiamo 2 istanze separate di DatatableObject:

Queste tabelle ora hanno proprietà "estese" integrate. In questo esempio, vengono tracciate alcune azioni della tabella, come il rilevamento della selezione di righe e le eliminazioni di colonne / righe.


Si può immaginare una serie di altre utili funzioni, che potrebbero essere implementate usando questo metodo. Gli altri sono d'accordo che c'è un caso per la creazione di tali estensioni?