⊗jsSpHPUSP 222 of 294 menu

Puna me URLSearchParams në JavaScript

Siç e dini tashmë, kur punoni me format dhe kërkesa GET në JavaScript, lindin stringje të formës së mëposhtme:

let paramsString = 'a=1&b=2&c=3';

Ndonjëherë është e nevojshme të ndryshohet në mënyrë programatike vlera e një parametri nga ky string. Shkrimi i kodit që e bën këtë nuk është shumë i përshtatshëm. Prandaj, në JavaScript ekziston një klasë e veçantë e integruar URLSearchParams për të punuar me stringje të tilla.

Le të krijojmë një objekt të kësaj klase, duke kaluar si parametër stringun tonë me parametra:

let paramsString = 'a=1&b=2&c=3'; let searchParams = new URLSearchParams(paramsString);

Le të shohim se cilat metoda ka objekti i krijuar.

Marrja e vlerës së parametrit

Duke përdorur metodën get mund të merrni vlerën e parametrit:

let res = searchParams.get('a'); console.log(res);

Le të përpiqemi të marrim vlerën e një parametri që nuk ekziston:

let res = searchParams.get('x'); console.log(res); // do të shfaqë null

Kontrollimi i ekzistencës së parametrit

Duke përdorur metodën has mund të kontrolloni ekzistencën e parametrit. Le të kontrollojmë një parametër ekzistues:

let res = searchParams.has('a'); console.log(res); // do të shfaqë true

Le të kontrollojmë një parametër që nuk ekziston:

let res = searchParams.has('x'); console.log(res); // do të shfaqë false

Shndërrimi në string

Duke përdorur metodën toString mund ta shndërroni objektin tonë përsëri në string:

let res = searchParams.toString(); console.log(res); // do të shfaqë 'a=1&b=2&c=3'

Ndryshimi i parametrave

Duke përdorur metodën set mund të ndryshoni vlerën e parametrit:

searchParams.set('b', 'x');

Le të kontrollojmë ndryshimet:

let res = searchParams.toString(); console.log(res); // do të shfaqë 'a=1&b=x&c=3'

Shtimi i parametrave

Duke përdorur metodën set mund të shtoni gjithashtu edhe një parametër të ri:

searchParams.set('d', '4');

Le të kontrollojmë ndryshimet:

let res = searchParams.toString(); console.log(res); // do të shfaqë 'a=1&b=2&c=3&d=4'

Shtimi i parametrave

Duke përdorur metodën append mund të shtoni gjithashtu edhe një parametër të ri:

searchParams.append('d', '4');

Le të kontrollojmë ndryshimet:

let res = searchParams.toString(); console.log(res); // do të shfaqë 'a=1&b=2&c=3&d=4'

Le të përpiqemi të shtojmë një parametër që ekziston tashmë:

searchParams.append('a', '4');

Në këtë rast, metoda jonë thjesht do të shtojë parametrin me të njëjtin emër në fund:

let res = searchParams.toString(); console.log(res); // do të shfaqë 'a=1&b=2&c=3&a=4'

Këtu shfaqet ndryshimi midis metodave set dhe append. E para do ta ndryshojë parametrin ekzistues, ndërsa e dyta thjesht do të shtojë një dublikatë të tij në fund.

Fshirja e parametrave

Duke përdorur metodën delete mund të fshini parametra:

searchParams.delete('b');

Le të kontrollojmë ndryshimet:

let res = searchParams.toString(); console.log(res); // do të shfaqë 'a=1&c=3'

Përsëritja e parametrave me cikël

Parametrat mund të përsëriten me cikël:

for (let p of searchParams) { console.log(p); }

Parametra të shumtë identikë

Le të themi se në stringun tonë ka disa parametra identikë:

let paramsString = 'a=1&a=2&b=2&c=3';

Duke përdorur metodën getAll mund të merrni një grup vlerash të këtyre parametrave:

let res = searchParams.getAll('a'); console.dir(res); // do të shfaqë [1, 2]

Detyra praktike

Le të jepet stringu i mëposhtëm me parametra:

let paramsString = 'test1=param1&test2=param2&test3=param3';

Shtoni në këtë string edhe një parametër test3.

Fshini nga ky string parametrin test2.

Ndryshoni parametrin test1 në një vlerë të re.

Shqip
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ne përdorim cookie për funksionimin e sajtit, analizën dhe personalizimin. Përpunimi i të dhënave bëhet në përputhje me Politikën e Privatësisë.
prano të gjitha konfiguro refuzo