⊗jsSpHPUSP 222 of 294 menu

Работа со URLSearchParams во JavaScript

Како што веќе знаете, при работа со форми и GET барања во JavaScript се појавуваат низи од овој вид:

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हिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние користиме колачиња за работата на веб-страната, анализа и персонализација. Обработката на податоци се врши во согласност со Политиката за приватност.
прифати ги сите прилагоди одбиј