У меня есть такой массив:
var arr = [
['a1','b1','c1','d1'],
['a1','e1','i1','j1'],
['a1','f1','k1','l1'],
['a1','g1','m1','n1'],
['a1','h1','o1','p1'],
['a2','b2','c2','d2'],
['a2','e2','i2','j2'],
['a2','f2','k2','l2'],
['a2','g2','m2','n2'],
['a2','h2','o2','p2']
];
, и я хочу преобразовать его в объект, подобный этому:
var converted_arr = {
'a1':{
'b1':['c1','d1'],
'e1':['i1','j1'],
'f1':['k1','l1'],
'g1':['m1','n1'],
'h1':['o1','p1'],
},
'a2':{
'b2':['c2','d2'],
'e2':['i2','j2'],
'f2':['k2','l2'],
'g2':['m2','n2'],
'h2':['o2','p2'],
}
};
Как вы можете видеть все элементы первогомассив (arr) - это массивы, и его элементы в этих массивах - это строки или числа или оба.
Один из примеров, которые я пробовал, следующий:
var obj = {};
$.each(arr,function(a)
{
obj[a[0]][a[1]] = a.slice(2);
});
Но он ничего не дает.
Кто-нибудь может мне помочь?