Mi rendo conto che è there are a ton of Node modules that provide an async API for parsing JSON, ma molti di essi sembrano leggere l'intero file o lo streaming in memoria, costruire una stringa gigante e quindi passarlo a JSON.parse()
. Questo è ciò che the second answer to "How to parse JSON using NodeJS?" suggests, ed è esattamente ciò che fa lo jsonfile module.Esiste un modulo Node per un parser JSON asincrono che non carica l'intera stringa JSON in memoria?
Costruire una stringa gigante è esattamente ciò che voglio evitare. Voglio un'API come:
parseJsonFile(pathToJsonFile): Promise
dove il Promise
che viene restituito risolve per l'oggetto JSON analizzata. Questa implementazione dovrebbe utilizzare una quantità costante di memoria. Non mi interessa alcun genere di cosa simile alla SAX che trasmetta eventi mentre vengono analizzati vari pezzi: solo il risultato finale.
penso jsonparse può fare quello che voglio (che comprende chiaramente la logica per il parsing di JSON senza utilizzare JSON.parse()
), ma non v'è alcun esempio semplice nel README.md
, e il one file in the examples directory sembra troppo complicato.
La mancanza di documentazione per [jsonparse] (https://github.com/creationix/jsonparse) mi lascia in sospeso. C'è solo un file in 'examples' e non sembra nemmeno che funzioni perché ci sono cose come' require ('./ colors') 'ancora nessun file' colors.js'. – bolinfest