JSON .parse()
JSON ၏ ဘုံအသုံးပြုမှုမှာ ဝဘ်ဆာဗာတစ်ခုသို့ ဒေတာဖလှယ်ရန်ဖြစ်သည်။
ဝဘ်ဆာဗာတစ်ခုမှ ဒေတာကို လက်ခံသောအခါ၊ ဒေတာသည် အမြဲတမ်း စာကြောင်းတစ်ခုဖြစ်သည်။
ဒေတာကို ခွဲခြမ်းစိပ်ဖြာပြီး ဒေ JSON.parse()
တာသည် JavaScript အရာဝတ္ထုတစ်ခု ဖြစ်လာသည်။
ဥပမာ - JSON ကို ပိုင်းခြားခြင်း
ဝဘ်ဆာဗာတစ်ခုမှ ဤစာသားကို ကျွန်ုပ်တို့ လက်ခံရရှိသည်ဟု မြင်ယောင်ကြည့်ပါ-
'{"name":"John", "age":30, "city":"New York"}'
JSON.parse()
စာသားကို JavaScript အရာဝတ္ထုအဖြစ်သို့ပြောင်းလဲရန် JavaScript လုပ်ဆောင်ချက်ကို အသုံးပြုပါ -
const obj = JSON.parse('{"name":"John", "age":30, "city":"New
York"}');
စာသားသည် JSON ဖော်မတ်တွင် ရှိနေကြောင်း သေချာပါစေ။ သို့မဟုတ်ပါက သင်သည် အထားအသိုအမှားတစ်ခု ရလိမ့်မည်။
သင့်စာမျက်နှာရှိ JavaScript အရာဝတ္ထုကို အသုံးပြုပါ-
ဥပမာ
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = obj.name;
</script>
JSON အဖြစ် Array
array တစ်ခုမှဆင်းသက်လာသော JSON ကိုအသုံးပြုသောအခါ JSON.parse()
၊ နည်းလမ်းသည် JavaScript အရာဝတ္ထုအစား JavaScript အခင်းအကျင်းကို ပြန်ပေးလိမ့်မည်။
ဥပမာ
const text = '["Ford", "BMW", "Audi", "Fiat"]';
const myArr = JSON.parse(text);
ချွင်းချက်
ခွဲခြမ်းစိတ်ဖြာသည့်ရက်စွဲများ
ရက်စွဲအရာဝတ္ထုများကို JSON တွင် ခွင့်မပြုပါ။
ရက်စွဲတစ်ခု ထည့်သွင်းရန် လိုအပ်ပါက ၎င်းကို စာကြောင်းအဖြစ် ရေးပါ။
၎င်းကို နောက်ပိုင်းတွင် ရက်စွဲအရာဝတ္ထုအဖြစ်သို့ ပြန်ပြောင်းနိုင်သည်-
ဥပမာ
စာကြောင်းတစ်ခုကို ရက်စွဲအဖြစ် ပြောင်းပါ-
const text =
'{"name":"John", "birth":"1986-12-14", "city":"New York"}';
const obj = JSON.parse(text);
obj.birth = new Date(obj.birth);
document.getElementById("demo").innerHTML = obj.name + ", " + obj.birth;
သို့မဟုတ် reviverJSON.parse()
ဟုခေါ်သော လုပ်ဆောင်ချက် ၏ ဒုတိယ ဘောင်ကို သင်သုံးနိုင်သည် ။
reviver parameter သည် တန်ဖိုးမပြန်မီတွင် ပစ္စည်းတစ်ခုစီကို စစ်ဆေးသည့် လုပ်ဆောင်ချက်တစ်ခုဖြစ်သည် ။
ဥပမာ
reviver လုပ်ဆောင်ချက်ကို အသုံးပြု၍ စာကြောင်းတစ်ခုအား ရက်စွဲအဖြစ်သို့ ပြောင်းပါ -
const text =
'{"name":"John", "birth":"1986-12-14", "city":"New York"}';
const obj = JSON.parse(text, function (key, value) {
if
(key == "birth") {
return new
Date(value);
} else {
return value;
}
});
document.getElementById("demo").innerHTML = obj.name + ", " + obj.birth;
ခွဲခြမ်းစိတ်ဖြာခြင်းလုပ်ဆောင်ချက်များ
လုပ်ဆောင်ချက်များကို JSON တွင် ခွင့်မပြုပါ။
လုပ်ဆောင်ချက်တစ်ခု ထည့်သွင်းရန် လိုအပ်ပါက ၎င်းကို စာကြောင်းအဖြစ် ရေးပါ။
၎င်းကို နောက်ပိုင်းတွင် လုပ်ဆောင်ချက်အဖြစ်သို့ ပြန်ပြောင်းနိုင်သည်-
ဥပမာ
စာကြောင်းတစ်ခုကို လုပ်ဆောင်ချက်တစ်ခုအဖြစ် ပြောင်းပါ-
const text =
'{"name":"John", "age":"function () {return
30;}", "city":"New York"}';
const obj = JSON.parse(text);
obj.age = eval("(" + obj.age + ")");
document.getElementById("demo").innerHTML = obj.name + ", " +
obj.age();
JSON တွင် လုပ်ဆောင်ချက်များကို သင်အသုံးပြုခြင်းကို ရှောင်ကြဉ်သင့်သည်၊ လုပ်ဆောင်ချက်များသည် ၎င်းတို့၏ နယ်ပယ်ကို ဆုံးရှုံးသွားမည်ဖြစ်ပြီး ၎င်းတို့ကို eval()
လုပ်ဆောင်ချက်များအဖြစ် ပြန်ပြောင်းရန်အတွက် သင်အသုံးပြုရမည်ဖြစ်ပါသည်။