Так еще раз: ситуация сложная.
есть массив в котором храняться ключи другого массива. нужно пройти путь в одном массиве по ключам которые храняться в другом и после записать туда значение.
main_arr = [[0,[0,1]],1]
path_arr = [0,1,0]
то есть нужно пройти путь по
main_arr используя ключи из массива
path_arr
1. main_arr -> ключ path_arr [0] // получаем [0,[0,1]]
2. main_arr -> ключ path_arr [1] // получаем [0,1]
3. main_arr -> ключ path_arr [2] // получаем 1
пока реализовал как полный дурак вот посмотрите межет поймете проблему:
function update_temp_arr(arr){
var p = temp_privileges_pos;
switch (temp_privileges_pos.length) {
case 1:
temp_privileges[p[0]] = arr;
break
case 2:
temp_privileges[p[0]][p[1]] = arr;
break
case 3:
temp_privileges[p[0]][p[1]][p[2]] = arr;
break
case 4:
temp_privileges[p[0]][p[1]][p[2]][p[3]] = arr;
break
case 5:
temp_privileges[p[0]][p[1]][p[2]][p[3]][p[4]] = arr;
break
case 6:
temp_privileges[p[0]][p[1]][p[2]][p[3]][p[4]][p[5]] = arr;
break
case 7:
temp_privileges[p[0]][p[1]][p[2]][p[3]][p[4]][p[5]][p[6]] = arr;
break
case 8:
temp_privileges[p[0]][p[1]][p[2]][p[3]][p[4]][p[5]][p[6]][p[7]] = arr;
break
case 9:
temp_privileges[p[0]][p[1]][p[2]][p[3]][p[4]][p[5]][p[6]][p[7]][p[8]] = arr;
break
}
}