JavaScript တွင် id ဖြင့် property တစ်ခုကို ပြောင်းလဲခြင်း
Object တစ်ခုလုံးကို မဟုတ်ဘဲ property တစ်ခုတည်းကိုသာ ပြောင်းလဲရန် လိုအပ်ပါလိမ့်မည်။ ထိုသို့ပြုလုပ်ပုံကို ကြည့်ရအောင်။
<arr ဟူသော variable ထဲတွင် object array တစ်ခု ရှိနေသည်ဆိုပါစို့။
let arr = [
{
id: 'GYi9GauC4gBF1e2SixDvu',
prop1: 'value11',
prop2: 'value12',
prop3: 'value13',
},
{
id: 'IWSpfBPSV3SXgRF87uO74',
prop1: 'value21',
prop2: 'value22',
prop3: 'value23',
},
{
id: 'JAmjRlfQT8rLTm5tG2m1L',
prop1: 'value31',
prop2: 'value32',
prop3: 'value33',
},
];
Element ၏ <id၊ ပြောင်းလဲရန် property အမည်နှင့် property တန်ဖိုးအသစ်တို့ကို
variable များထဲတွင် သိမ်းထားသည်ဆိုပါစို့။
let id = 'IWSpfBPSV3SXgRF87uO74';
let prop = 'prop1';
let value = '!!!';
ဤပြဿနာကို ဖြေရှင်းရန် destructuring နှင့် computed property names တို့ကို အသုံးပြုရန် အဆင်ပြေပါသည်။
let res = arr.map(elem => {
if (elem.id === id) {
return {...elem, [prop]: value};
} else {
return elem;
}
});
အောက်ပါ variable များ ရှိပါသည်။
let id = 'JAmjRlfQT8rLTm5tG2m1L';
let prop = 'prop2';
�တ်မှတ်ထားသော <id ရှိသည့် array element ကို ယူကာ၊ ၎င်းထဲရှိ သတ်မှတ်ထားသော
အမည်ရှိ property ၏တန်ဖိုးအဆုံးသို့ <'!' သင်္ကေတ ထည့်သွင်းပေးသည့်
ခလုတ်တစ်ခု ဖန်တီးပါ။
Property အမည်နှစ်ခုကို သိမ်းဆည်းထားသည့် variable နှစ်ခု ရှိပါသည်။
let id = 'JAmjRlfQT8rLTm5tG2m1L';
let prop1 = 'prop2';
let prop2 = 'prop3';
ယခင်အပိုင်းက ပြဿနာကို ပြင်ဆင်ပြီး ခလုတ်ကိုနှိပ်လိုက်သည်နှင့် သတ်မှတ်ထားသော property နှစ်ခုအတွက် တစ်ပြိုင်နက် ပြောင်းလဲမှုများ လုပ်ဆောင်ပါစေ။
သီအိုရီပိုင်းတွင် ဖော်ပြထားသော ဖြေရှင်းချက်ကို <Object.assign ဖြင့်
object ကို ကူးယူခြင်းအားဖြင့် ပြန်လည်ပြင်ဆင်ပါ။