⊗jsSpHPUSP 222 of 294 menu

URLSearchParams-ի աշխատանքը JavaScript-ում

Ինչպես արդեն գիտեք, JavaScript-ում ֆորմաների և GET հարցումների հետ աշխատելիս առաջանում են այսպիսի տեսքի տողեր.

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

Երբեմն անհրաժեշտ է ծրագրային եղանակով փոխել այս տողից որևէ պարամետրի արժեքը։ Կոդ գրելը, որ դա անում է, շատ հարմար չէ։ Ուստի JavaScript-ում ներկառուցված է հատուկ դաս URLSearchParams նման տողերի հետ աշխատելու համար։

Եկեք ստեղծենք այս դասի օբյեկտ՝ փոխանցելով պարամետրով մեր պարամետրերով տողը.

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

Եկեք տեսնենք, թե ինչ մեթոդներ ունի ստեղծված օբյեկտը։

Պարամետրի արժեքի ստացում

Օգտագործելով get մեթոդը կարելի է ստանալ պարամետրի արժեքը.

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

Փորձենք ստանալ գոյություն չունեցող պարամետրի արժեքը.

let res = searchParams.get('x'); console.log(res); // կարտածի null

Պարամետրի առկայության ստուգում

Օգտագործելով has մեթոդը կարելի է ստուգել պարամետրի առկայությունը։ Եկեք ստուգենք գոյություն ունեցող պարամետրը.

let res = searchParams.has('a'); console.log(res); // կարտածի true

Եկեք ստուգենք գոյություն չունեցողը.

let res = searchParams.has('x'); console.log(res); // կարտածի false

Փոխակերպումը տողի

Օգտագործելով toString մեթոդը կարելի է փոխակերպել մեր օբյեկտը դարձյալ տող.

let res = searchParams.toString(); console.log(res); // կարտածի 'a=1&b=2&c=3'

Պարամետրերի փոփոխում

Օգտագործելով set մեթոդը կարելի է փոխել պարամետրի արժեքը.

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

Եկեք ստուգենք փոփոխությունները.

let res = searchParams.toString(); console.log(res); // կարտածի 'a=1&b=x&c=3'

Պարամետրերի ավելացում

Օգտագործելով set մեթոդը կարելի է նաև ավելացնել նոր պարամետր.

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

Եկեք ստուգենք փոփոխությունները.

let res = searchParams.toString(); console.log(res); // կարտածի 'a=1&b=2&c=3&d=4'

Պարամետրերի ավելացում

Օգտագործելով append մեթոդը կարելի է նաև ավելացնել նոր պարամետր.

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

Եկեք ստուգենք փոփոխությունները.

let res = searchParams.toString(); console.log(res); // կարտածի 'a=1&b=2&c=3&d=4'

Եկեք փորձենք ավելացնել արդեն գոյություն ունեցող պարամետր.

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

Այս դեպքում մեր մեթոդը պարզապես կավելացնի նույնանուն պարամետր դեպի վերջ.

let res = searchParams.toString(); console.log(res); // կարտածի 'a=1&b=2&c=3&a=4'

Այստեղ դրսևորվում է տարբերությունը set և append մեթոդների միջև։ Առաջինը կփոխի գոյություն ունեցող պարամետրը, իսկ երկրորդը պարզապես կավելացնի դուբլը դեպի վերջ։

Պարամետրերի ջնջում

Օգտագործելով delete մեթոդը կարելի է ջնջել պարամետրերը.

searchParams.delete('b');

Եկեք ստուգենք փոփոխությունները.

let res = searchParams.toString(); console.log(res); // կարտածի 'a=1&c=3'

Պարամետրերի բազմապտույտ ցիկլով

Պարամետրերը կարելի է բազմապտույտել ցիկլով.

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

Մի քանի նույնական պարամետրեր

Ենթադրենք մեր տողում կան մի քանի նույնական պարամետրեր.

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

Օգտագործելով getAll մեթոդը կարելի է ստանալ այս պարամետրերի արժեքների զանգված.

let res = searchParams.getAll('a'); console.dir(res); // կարտածի [1, 2]

Գործնական առաջադրանքներ

Ենթադրենք տրված է պարամետրերով հետևյալ տողը.

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

Ավելացրեք այս տողին ևս մեկ test3 պարամետր։

Ջնջեք այս տողից test2 պարամետրը։

Փոխեք test1 պարամետրը նոր արժեքի։

Հայերեն
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Մենք օգտագործում ենք cookie-ներ կայքի աշխատանքի, վերլուծության և անհատականացման համար։ Տվյալների մշակումը կատարվում է համաձայն Գաղտնիության քաղաքականության։
ընդունել բոլորը կարգավորել մերժել