Node.js ha demostrado ser una plataforma líder que se puede utilizar para crear aplicaciones muy escalables en el menor tiempo posible. Lo bueno de la plataforma es que se actualiza continuamente para asegurar que los programadores entreguen las mejores aplicaciones a sus clientes. Es aconsejable seleccionar archivos JSON para el almacenamiento de datos que no sean archivos XML. Esto se debe a que los archivos JSON son fáciles de leer y más livianos. Cuando los archivos JSON se utilizan con Node.js, los desarrolladores encontrarán un acceso fácil a ellos.

Considera el código dado a continuación, que es un ejemplo de datos JSON:

// un array en JSON 
["nine", "ten", "eleven"] 

// un objecto en JSON 
{ "nine": 9, "ten": 10, "eleven": 11 }

En JSON, los datos se pueden almacenar en forma de una lista de valores o como un hash de valores y propiedades.

Los siguientes son los pasos para manejar archivos JSON en Node.JS:

El primer paso debe implicar la creación de un archivo JSON ficticio. Esto se muestra en el siguiente código:

{ 

    "username":"user1", 
    "password":"user1password" 
    "email":"user1@example.com", 
    "uid": 1100 

}

El archivo anterior se puede guardar y se le dará el nombre “dymmy.json” El mismo archivo también se debe guardar como “sample.txt”.

A continuación, debe decidir si leer el archivo de forma síncrona o asíncrona. Cuando hablamos del método síncrono, el archivo JSON se leerá en una dirección, línea por línea. Esto significa que una línea sólo se leerá después de leer la anterior. Cuando se trata de leer de forma asíncrona, el programa pasará a la siguiente línea una vez que haya mostrado todos los problemas que tiene sobre la línea actual.

La salida variará, dependiendo del método que utilice para leer el archivo JSON. Considere el siguiente código, que muestra la salida de una llamada síncrona:

// Reading Synchrously 
var files = require("fs"); 
console.log("\n *STARTING* \n"); 
var cont = fs.readFileSync("content.txt"); 
console.log("Output Content : \n"+ cont); 
console.log("\n *EXIT* \n");

La salida síncrona se mostrará como se muestra a continuación:

C:\NodeJs>node readsync.js 
*STARTING* 
Output Content: 
/* content here */ 
*EXIT* 

// Defining the JSON File 
var files = require("fs"); 
console.log("\n *STARTING* \n"); 

// Getting the content from the file 
var conts = fs.readFileSync("jsoncontent.json"); 

// Definition to the JSON type 
var jsonCont = JSON.parse(conts);

// Getting the Value from the JSON 
console.log("User Name:", jsonCont.username); 
console.log("Email:", jsonCont.email); 
console.log("Password:", jsonCont.password); 
log("\n *EXIT* \n");

El resultado final debe ser como se muestra a continuación:

C:\NodeJs>node readjson.js 
*STARTING* 
User Name: user1 
Email: user1@example.com 
Password: user1password 
*EXIT*

Ahora necesitamos explorar algunas de las operaciones más comunes que se pueden hacer a un archivo JSON en Node.js.

Cómo convertir un objeto JSON en una cadena (String)

El método “stringify” se puede usar con el propósito de convertir un objeto JSON en una cadena. El código siguiente se puede utilizar para hacer esto:

var object = {'key':'value'}; 
console.log( 
    /* defining the stringify */ 
    JSON.stringify(object) 
);

Cómo convertir una cadena (String) en un objeto JSON

El código que se indica a continuación se puede utilizar con el fin de lograr esto:

var string = "{'key':'value'}"; 
var object = JSON.parse(string); 
console.log(object.key);

El “trim()”, que está disponible para cadenas también se puede utilizar como una alternativa a esto.

Para que un archivo JSON se pueda leer automáticamente, esto se puede hacer de la siguiente manera:

var object = require("../path/jsonfile.json");

Con el código anterior, el Node.js podrá leer automáticamente un archivo JSON. Lo que sucede es que el contenido se analiza en un objeto JSON determinado y, a continuación, se asigna a una variable.

Añadir un elemento nuevo a un objeto JSON

Supongamos que tenemos un objeto JSON, y necesitamos modificarlo añadiéndole un nuevo elemento en forma de un par clave / valor. Las dos formas que se muestran a continuación se pueden utilizar con el propósito de hacer esto:

var ejson = {'key':'value'}; 
//defining the key value 
ejson.key2 = '...xyz...'; 
//defining another key value 
ejson[key3] = '...pqr...';

A veces, es posible que necesitemos recorrer a través de cada objeto en JSON. Para ello, se puede hacer uso del bucle “for”. Esto se demuestra en el fragmento de código que se muestra a continuación:

var ejson = {'key':'...xyz...', 'key2':'...pqr...'}; 
for(var eKey in ejson) 
{ 
    console.log("key:"+exKey+", value:"+ejson[exKey]); 
}

Si el valor anterior se utiliza como un objeto JSON en sí, entonces se produciría un error. Por esta razón, se recomienda revisar si se trata de un objeto JSON o no. Una vez estemos seguros que es un objeto JSON lo trataremos.

Es posible que se necesite comprobar si el objeto JSON tiene una clave específica. El siguiente fragmento de código se muestra como hacerlo:

 

var ejson = {'key':'...xyz...', 'key2':'...pqr...'}; 
if(ejson.hasOwnProperty('key2'))
{ 
    //definition should be added here
}

También se podría necesitar eliminar un elemento de un objeto JSON. La palabra clave “delete” se puede utilizar para seleccionar el elemento y luego suprimirlo.

var ejson = {'key':'...xyz...'}; 
delete ejson['key'];

Aquí ya podemos decir que sabemos tratar de forma simple objetos JSON en Node.js

Deja un comentario