JavaScript တွင် URLSearchParams ဖြင့် အလုပ်လုပ်ခြင်း

သင်သိပြီးဖြစ်သည့်အတိုင်း၊ JavaScript တွင် ဖောင်များနှင့် GET တောင်းဆိုမှုများကို အလုပ်လုပ်သည့်အခါ ဤကဲ့သို့သော အမျိုးအစားမျိုး၏ စာကြောင်းများ ပေါ်ပေါက်လာပါသည်။

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

တစ်ခါတစ်ရံ ဤစာကြောင်းမှ မည်သည့်သတ်မှတ်ချက်၏တန်ဖိုးကိုမဆို ကွန်ပြူတာပရိုဂရမ်အရ ပြောင်းလဲရန် လိုအပ်ပါသည်။ ထိုသို့လုပ်ဆောင်သည့် ကုဒ်ကို ရေးသားရန် သိပ်အဆင်ပြေခြင်း မရှိပါ။ ထို့ကြောင့် JavaScript တွင် ထိုကဲ့သို့သောစာကြောင်းများနှင့် အလုပ်လုပ်ရန် အထူး URLSearchParams အတန်း ပါဝင်ပြီးသားဖြစ်သည်။

ကျွန်ုပ်တို့၏သတ်မှတ်ချက်စာကြောင်းကို ပို့ပေးခြင်းဖြင့် ဤအတန်း၏အရာဝတ္ထုကို ဖန်တီးကြပါစို့။

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

ဖန်တီးထားသောအရာဝတ္ထုတွင် မည်သည့်နည်းလမ်းများ ရှိသည်ကို ကြည့်ကြပါစို့။

သတ်မှတ်ချက်၏တန်ဖိုးကို ရယူခြင်း

နည်းလမ်း get ကို အသုံးပြု၍ သတ်မှတ်ချက်၏တန်ဖိုးကို ရယူနိုင်ပါသည်။

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

မတည်ရှိသော သတ်မှတ်ချက်၏တန်ဖိုးကို ရယူကြည့်ကြပါစို့။

javascriptlet res = searchParams.get('x');
console.log(res); // null ကိုပြသမည်

သတ်မှတ်ချက် ရှိ/မရှိ စစ်ဆေးခြင်း

နည်းလမ်း has ကို အသုံးပြု၍ သတ်မှတ်ချက် ရှိ/မရှိ စစ်ဆေးနိုင်ပါသည်။ ရှိပြီးသား သတ်မှတ်ချက်ကို စစ်ဆေးကြည့်ပါ။

javascriptlet res = searchParams.has('a');
console.log(res); // true ကိုပြသမည်

မရှိသော သတ်မှတ်ချက်ကို စစ်ဆေးကြည့်ပါ။

javascriptlet res = searchParams.has('x');
console.log(res); // false ကိုပြသမည်

စာကြောင်းအဖြစ်သို့ ပြောင်းလဲခြင်း

နည်းလမ်း toString ကို အသုံးပြု၍ ကျွန်ုပ်တို့၏အရာဝတ္ထုကို ပြန်၍စာကြောင်းအဖြစ်သို့ ပြောင်းလဲနိုင်ပါသည်။

javascriptlet res = searchParams.toString();
console.log(res); // 'a=1&b=2&c=3' ကိုပြသမည်

သတ်မှတ်ချက်များကို ပြောင်းလဲခြင်း

နည်းလမ်း set ကို အသုံးပြု၍ သတ်မှတ်ချက်၏တန်ဖိုးကို ပြောင်းလဲနိုင်ပါသည်။

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

ပြောင်းလဲမှုများကို စစ်ဆေးကြည့်ပါ။

javascriptlet res = searchParams.toString();
console.log(res); // 'a=1&b=x&c=3' ကိုပြသမည်

သတ်မှတ်ချက်များကို ပေါင်းထည့်ခြင်း

နည်းလမ်း set ကို အသုံးပြု၍ သတ်မှတ်ချက်အသစ်ကို ပေါင်းထည့်နိုင်ပါသည်။

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

ပြောင်းလဲမှုများကို စစ်ဆေးကြည့်ပါ။

javascriptlet res = searchParams.toString();
console.log(res); // 'a=1&b=2&c=3&d=4' ကိုပြသမည်

သတ်မှတ်ချက်များကို ပေါင်းထည့်ခြင်း

နည်းလမ်း append ကို အသုံးပြု၍လည်း သတ်မှတ်ချက်အသစ်ကို ပေါင်းထည့်နိုင်ပါသည်။

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

ပြောင်းလဲမှုများကို စစ်ဆေးကြည့်ပါ။

javascriptlet res = searchParams.toString();
console.log(res); // 'a=1&b=2&c=3&d=4' ကိုပြသမည်

ရှိပြီးသား သတ်မှတ်ချက်ကို ပေါင်းထည့်ကြည့်ပါစို့။

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

ဤကိစ္စတွင် ကျွန်ုပ်တို့၏နည်းလမ်းသည် အမည်တူသတ်မှတ်ချက်ကို နောက်ဆုံးတွင် ထည့်သွင်းပေးမည်ဖြစ်သည်။

javascriptlet res = searchParams.toString();
console.log(res); // 'a=1&b=2&c=3&a=4' ကိုပြသမည်

ဤသည်မှာ နည်းလမ်းများ set နှင့် append ကြားရှိ ကွာခြားချက်ကို ပြသသည်။ ပထမနည်းလမ်းက ရှိပြီးသားသတ်မှတ်ချက်ကို ပြောင်းလဲမည်ဖြစ်ပြီး၊ ဒုတိယနည်းလမ်းက ၎င်း၏ပုံတူကို နောက်ဆုံးတွင် ထည့်သွင်းပေးမည်ဖြစ်သည်။

သတ်မှတ်ချက်များကို ဖျက်ခြင်း

နည်းလမ်း delete ကို အသုံးပြု၍ သတ်မှတ်ချက်များကို ဖျက်နိုင်ပါသည်။

javascriptsearchParams.delete('b');

ပြောင်းလဲမှုများကို စစ်ဆေးကြည့်ပါ။

javascriptlet res = searchParams.toString();
console.log(res); // 'a=1&c=3' ကိုပြသမည်

သတ်မှတ်ချက်များကို ကွင်းဆက်ဖြင့် လှည့်ပတ်ခြင်း

သတ်မှတ်ချက်များကို ကွင်းဆက်ဖြင့် လှည့်ပတ်နိုင်ပါသည်။

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

တူညီသောသတ်မှတ်ချက်များ အများအပြား

ကျွန်ုပ်တို့၏စာကြောင်းတွင် တူညီသောသတ်မှတ်ချက် အများအပြား ရှိသည်ဆိုကြပါစို့။

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

နည်းလမ်း getAll ကို အသုံးပြု၍ ထိုသတ်မှတ်ချက်များ၏တန်ဖိုးများ၏ခင်းကျင်းမှုကို ရယူနိုင်ပါသည်။

javascriptlet res = searchParams.getAll('a');
console.dir(res); // [1, 2] ကိုပြသမည်

လက်တွေ့လေ့ကျင့်ခန်းများ

အောက်ပါသတ်မှတ်ချက်စာကြောင်း ပေးထားသည်ဆိုကြပါစို့။

javascriptlet paramsString = 'test1=param1&test2=param2&test3=param3';
Задание 1

ဤစာကြောင်းသို့ test3 ဟူသော အခြားသတ်မှတ်ချက်တစ်ခုကို ပေါင်းထည့်ပါ။

Задание 2

ဤစာကြောင်းမှ test2 ဟူသော သတ်မှတ်ချက်ကို ဖျက်ပါ။

Задание 3

test1 ဟူသော သတ်မှတ်ချက်ကို တန်ဖိုးအသစ်သို့ ပြောင်းလဲပါ။