Тағйир додани унсурҳои массив ба таври иммутабел дар JavaScript
Ҳоло биёед тағйир додани унсурҳои массив ба таври иммутабелро омӯзем. Бигзор барои мисол мо массиви зеринро дошта бошем:
let arr = [1, 2, 3, 4, 5];
Бигзор рақами унсури барои тағйир додан
дар тағйирёбандаи ind нигоҳ дошта шавад:
let ind = 3;
Биёед унсури бо рақами додашударо тағйир диҳем. Мувофиқи равиши мо, мо бояд аз массив нусха бардорем ва унсурро дар он нусха тағйир диҳем. Биёед ин корро анҷом диҳем:
let copy = Object.assign([], arr);
copy[ind] = '!';
let res = copy;
Акнун аз равиши дуюм истифода барем:
let res = [
...arr.slice(0, ind),
'!',
...arr.slice(ind + 1)
];
Тугмае созед, ки пахш кардани он боиси тағйир ёфтани унсури массив шавад. Бигзор рақами унсури барои тағйир додан дар тағйирёбанда нигоҳ дошта шавад.