Sto usando gli oggetti per assegnare un nome al mio codice JavaScript. Questi oggetti di solito contengono funzioni chiamate mapping del this
-pointer all'oggetto stesso utilizzando apply
. Tuttavia, trovo scomodo utilizzare il parametro this
ogni volta che desidero accedere ad altre funzioni o proprietà dell'oggetto, specialmente perché in molti casi uso il new
-operator per usare gli oggetti funzione nel modo in cui usereste le classi. Preferirei scrivere new Line()
invece se new this.Line()
.È possibile aggiungere dinamicamente variabili locali a una funzione?
Sarebbe bello se si potesse aggiungere le variabili locali a una funzione del modo in cui lo fa con php extract
(segue pseudocodice, è un po 'più complicato)
var sample_object = {
"some_function": function() {}
}
test() {
extract(sample_object);
some_function(); // imported from sample_object
}
è che anche possibile?
È *poteva* usa un blocco 'with', ma non lo suggerisco. Penso inoltre che sia stato rimosso in modalità rigorosa ES5. –
@Rocket Mi piacerebbe non aggiungere la parte se potessi :-) È vero che funzionerebbe, ma 'with' è confuso e strano. Inoltre sono abbastanza sicuro che causi problemi di prestazioni, ma non riesco a ricordare la spiegazione per questo. – Pointy
Cosa succede se si passa un array come argomento? – elvenbyte