Rukovanje JSON -om s Node.js

Jedan od najpopularnijih i najučinkovitijih formata danas za čitanje i pisanje podataka je JSON ili njegova kratica na engleskom. JavaScript Object Notation, koji ima unaprijed definirani format i ne ovisi o bilo kojem programskom jeziku, što omogućuje besprijekornu i besprijekornu komunikaciju između aplikacija.

Ali ne samo JSON porasla je popularnost, JavaScript Kao programski jezik to je i učinio, i to zahvaljujući svom razvojnom okruženju tzv Node.js što nam omogućuje pokretanje na strani poslužitelja.

Node.js izvorno i jednostavno podržava objekte tipa JSON Što se tiče komuniciranja podataka, pogledajmo onda različite načine koje imamo u Node.js -u za izvođenje rukovanja JSON u našem kodu.

1. Izradite JSON objekt


Jedna od glavnih operacija koje moramo naučiti rukovati za manipuliranje JSON -om je stvaranje objekta kao takvog, koji ćemo zahvaljujući tom stvaranju moći brzo i jednostavno pristupiti njegovim različitim atributima.

Za to ćemo stvoriti novu datoteku pod nazivom json_creation.js koji će sadržavati deklaraciju našeg JSON objekta zvanog user i imat će nekoliko svojstava svojstvenih njoj, da vidimo kako to izgleda:

 var user = {name: 'Solvetic Developer', e -adresa: '[email protected]', dob: 36, Datum registracije: novi Datum ()}
Kao što možemo vidjeti, struktura JSON-a poštuje oblik ključ-vrijednost koji započinje svoju deklaraciju zagradama, gdje možemo pronaći nekoliko vrsta vrijednosti, iz nizova znakova, brojeva, pa čak i koristimo funkciju Datum () da biste dobili trenutni datum. Deklaracija našeg objekta prilično je laka za čitanje, kako za ljudsko oko, tako i za bilo koji jezik, čak možemo i deklarirati ugniježđeni JSON objekt da grupira što je više moguće vrijednosti, pogledajmo kako to izgleda u sljedećem primjeru:
 var user = {name: 'Solvetic Developer', email: '[email protected]', dob: 36, Datum registracije: novi Datum (), adresa: {grad: 'Madrid', država: 'Španjolska'}}
S našim JSON -om izrađenim ako želimo vidjeti njegov sadržaj kao i njegovu strukturu pomoću console.log () možemo to vidjeti bez problema, da vidimo kako izgleda naš konačni kod:
 var user = {name: 'Solvetic Developer', e -adresa: '[email protected]', dob: 36, Datum registracije: novi Datum (), adresa: {grad: 'Madrid', država: 'Španjolska'}} konzola . log (korisnik);
Konačno, da bismo je pokrenuli na našoj konzoli, samo moramo upotrijebiti naredbu node iza koje slijedi naziv datoteke. Možete testirati odgovor s konzole.

Kao što smo mogli vidjeti, izrada našeg JSON objekta bila je iznimno jednostavna, a to zahvaljujući razvojnom okruženju i izvornom rukovanju i bez problema ovog formata.

2. Pristup atributima


Mogućnost prikaza našeg JSON -a korisna je ako želimo provjeriti njegovu strukturu u potrazi za pogreškama ili nekim drugim pojedinostima, ali općenito nakon generiranja ovog objekta najsigurnije je da moramo pristupiti njegovim atributima, provjeriti postoji li atribut ili imamo li primili operacijom a RESTful API provjerite koje atribute ima naš objekt.

Ako već znamo neko objektno orijentirano programiranje, znamo da objekti imaju atribute i možemo im pristupiti putem instance predmetnog objekta, u Node.js Mnogo je jednostavnije, samo pomoću objekta i naziva atributa možemo mu pristupiti, da vidimo kako ćemo to primijeniti na naš prethodno stvoreni objekt:

 var user = {name: 'Solvetic Developer', e -adresa: '[email protected]', dob: 36, Datum registracije: novi Datum (), adresa: {grad: 'Madrid', država: 'Španjolska'}} konzola . log ('Korisničko ime:' + korisničko ime); console.log ('Korisnik e -pošte:' + user.email); console.log ('Doba korisnika:' + user.age); console.log ('Datum registracije:' + user.RegistrationDate); console.log ('Zemlja korisnika:' + user.country);
Pokrenimo naš primjer i vidimo odgovor po konzoli.

[attachment = 7621: handling-json-nodejs-2.jpg.webp]

Na ovaj način bismo mogli pristupiti svim našim atributima bez većih problema, međutim ako smo promatrači shvaćamo da u slučaju Zemlja korisnika dao nam je odgovor na nedefiniran, a to je zato što je ugniježđeni objekt, ali ne bismo trebali brinuti budući da samo postavljanjem sadržanog objekta možemo pristupiti atributu:

 console.log ('Zemlja korisnika:' + user.direction.country);
Ponovimo naš primjer i vidimo kako je naša pogreška ispravljena.

Uspjeli smo to riješiti bez problema, ali to je zato što znamo strukturu našeg JSON -a, ali u slučaju da ga ne poznajemo, moramo prijeći na druge tehnike koje će nam pomoći u ovom zadatku, jer je to kao jednostavno kao izvođenje iteracije atributa našeg objekta, da vidimo:

 var user = {name: 'Solvetic Developer', email: '[email protected]', dob: 36, Datum registracije: novi Datum (), adresa: {grad: 'Madrid', država: 'Španjolska'}} za (var atr u korisniku) {console.log (atr); }
Izvodimo naš primjer i vidimo kako primamo sve atribute sadržane u našem objektu.

Na ovaj način, ako ne poznajemo strukturu našeg JSON -a, možemo je lako dobiti, a u slučaju da imamo ugniježđene objekte možemo učiniti sljedeće:

 for (var atr u user.address) {console.log (atr); }
Gdje će nam prilikom izvođenja dati atribute sadržane u našem ugniježđenom objektu:

Konačno, ako želimo biti izravniji i znati postoji li neki određeni atribut prema njegovu identifikatoru, možemo koristiti funkciju hasOwnProperty () koje će vratiti true ili false ako postoji ili ne:

 var user = {name: 'Solvetic Developer', e -adresa: '[email protected]', dob: 36, Datum registracije: novi Datum (), adresa: {grad: 'Madrid', država: 'Španjolska'}} konzola . log (user.hasOwnProperty ('ime')); console.log (user.hasOwnProperty ('dni')); console.log (user.hasOwnProperty ('dob')); console.log (user.hasOwnProperty ('naslov'));
Pogledajmo odgovor konzole našeg primjera gdje moramo dobiti true za prvi i treći atribut, a false za preostala dva.

3. Uređivanje atributa


Mnogo puta kada manipuliramo ovim vrstama objekata morat ćemo više puta uređivati ​​podatke koje njihovi atributi sadrže i raditi s Node.js Zadatak ne može biti jednostavniji, jer samo dodjelom nove vrijednosti atributu moći ćemo urediti podatke, da vidimo:
 var user = {name: 'Solvetic Developer', email: '[email protected]', dob: 36, Datum registracije: novi Datum (), adresa: {grad: 'Madrid', država: 'Španjolska'}} korisnik . email = '[email protected]'; user.age = 18; console.log (korisnik);
Pogledajmo kako su atributi našeg objekta uspješno prepisani:

Osim uređivanja informacija o atributu, u naš možemo dodati novi atribut JSON, da vidimo kako ćemo postići ovu operaciju:

 var user = {name: 'Solvetic Developer', email: '[email protected]', dob: 36, Datum registracije: novi Datum (), adresa: {grad: 'Madrid', država: 'Španjolska'}}; console.log (korisnik); user ['position'] = 'Glavni urednik'; console.log (korisnik);
Ako izvedemo naš primjer, možemo vidjeti naš izvorni objekt, a zatim i dodavanje novog atributa na njegovu kraju, što nam olakšava dodavanje atributa u naš objekt bez puno napora, da vidimo.

4. Uređivanje atributa


Vidjeli smo kako stvoriti objekt JSON i kako to učinkovito riješiti, ali možemo ići dalje i kombinirati ovo s zbirkom Node.js, dobivajući novu vrstu elementa, JSON niz koji nije ništa drugo do zbirka JSON objekata. Kako bismo to ilustrirali, stvorit ćemo objekt koji će voditi evidenciju korisnika u odnosu na niz kupljenih proizvoda, da vidimo:
 var date = novi datum (); var transakcije = {id: 1, korisnik: 'Solvetic', datumTran: datum, detalji: [{kôd: 'p01', proizvod: 'PS4', cijena: 350}, {kôd: 'p02', proizvod: '3DS ', cijena: 199}, {kod:' p03 ', proizvod:' kindle ', cijena: 60}]}
Da bismo mu pristupili, samo moramo koristiti console.log () s imenom našeg novog objekta, pogledajmo odgovor s konzole.

Kao što vidimo, redoslijed naše strukture mnogo je čistiji i lakši za pristup za veći broj atributa, čak i u slučaju da imamo iznimno veliki broj, možemo proći kroz naš JSON niz i dobiti njegove parametre na sljedeći način:

 za (var i = 0; i
Za kraj, pogledajmo odgovor konzole pri izvođenju primjera.

To smo vidjeli Rukovanje JSON -om s Node.js Jednostavan je i učinkovit, pomaže nam u različitim funkcijama koje ima, a domaće rukovanje čini rad s ovom vrstom objekata jednim od najjednostavnijih zadataka koje možemo pronaći.

wave wave wave wave wave