Supponiamo di avere un oggetto semplice creato dall'input dell'utente:
var input = { url: 'http://example.com/', path: 'abc', user: 'adam' };
E devo scrivere le funzioni che aggiornano le proprietà url e path in base ad alcune logiche di business, ci sono molti approcci:
A. funzionale
input.url = validate(input);
input.path = convert(input);
B. effetto collaterale
update(input);
C. crea un nuovo oggetto internamente
input = process(input);
Per javascript, è sempre meglio usare l'approccio funzionale, per facilitare il debug e la velocità? O un processo generale di riflessione sul decidere quale sia più appropriato.