Estendere JavaScript con le parole chiave
-
19-09-2019 - |
Domanda
Il mio Google-ing su questo che è risultata soccombente, quindi ecco la domanda:
Mi chiedo se è possibile aggiungere le mie parole chiave per estendere il linguaggio JavaScript in un dato quadro.
Ad esempio
Object1 extends Object2
nel codice comporterebbe l'esecuzione di questo metodo
inherit(Object1, Object2)
Dove ereditano è una funzione che si occupa di copiare il prototipo, aggiungendo il costruttore del genitore, ecc ..
E 'questo fattibile? Se é cosi, come ? In caso contrario, qualsiasi altro bel modo di fare questo?
Grazie.
Soluzione
Non è possibile aggiungere parole chiave per la lingua, ma tutto è un oggetto e tutto può essere esteso con la prototipazione.
Io normalmente non collegare a Crockford ma ha in realtà una copertura abbastanza decente di questo , che vi offrira 'la sintassi della forma foo.inherits(bar);
che è circa buono come si potrebbe desiderare. Questo è piuttosto un modello comune.
Altri suggerimenti
sistemi di diverse macro JavaScript sono stati sviluppati per questo scopo, tra cui sweet.js. Utilizzando il Sweet.js macro sistema, è possibile sostituire una parola chiave con un'altra parola chiave (ad esempio, la sostituzione della parola chiave con un function
def
parola chiave.) Tuttavia, al fine di eseguire gli script sweet.js, è necessario prima compilare in JavaScript utilizzando il compilatore sweet.js.
Non è possibile aggiungere nuove parole chiave a JavaScript, n. È possibile creare la propria interfaccia piacevole per la creazione di classi, però, forse traendo ispirazione da una delle miriadi di biblioteca, framework e toolkit là fuori già!