¿hay una necesidad para json en node.js

Me gustaría incluir un par de archivos JSON en mi código JavaScript que están en el mismo directorio que mi archivo fuente JavaScript.

Si quisiera incluir otro archivo JavaScript, simplemente podría usar require . Ahora estoy usando readFileSync y __dirname para obtener el JSON, lo que creo que es una forma fea de hacerlo.

¿Hay algo similar para requerir que me permita cargar un archivo JSON?

A partir del nodo v0.5.x sí, puede requerir su JSON tal como requeriría un archivo js.

var someObject = require('./somefile.json')

En ES6:

import someObject from ('./somefile.json')

No. readFile o readFileSync (este último solo en el momento del inicio).

O use una biblioteca existente como

  • cjson

También puede escribir su configuración en un archivo js en lugar de un archivo json como

 module.exports = { // json } 

Los archivos JSON no requieren una statement de exportación explícita. No es necesario exportar para usarlo como archivos Javascript.

Por lo tanto, puede usar solo un documento JSON válido.

data.json

 { "name": "Freddie Mercury" } 

main.js

 var obj = require('data.json'); console.log(obj.name); //Freddie Mercury 

Incluso puede usar el requerimiento de su JSON sin especificar la extensión .json . Le permitirá cambiar la extensión del archivo a .js sin ningún cambio en sus importaciones.

asumiendo que tenemos ./myJsonFile.json en el mismo directorio.

 const data = require('./myJsonFile') 

Si en el futuro cambiará ./myJsonFile.json a ./myJsonFile.js, no se debe cambiar nada en la importación.