У меня есть объект с глубиной не более 3:Перестановка объектов JavaScript
OBJ.T.V.E={...}
Т и V являются целыми числами (например, в OBJ [0] [1] [ 'Строка'] = {...}) так типичная структура может быть:
OBJ[0][0]['S1']={..}
OBJ[0][0]['S2']={..}
OBJ[0][1]['S1']={..}
OBJ[0][2]['S1']={..}
Я хочу изменить и получить как-то так:
OBJNEW['S1'][0][0]={...}
, который будет иметь такое же значение, как и в OBJ[0][0]['S1']
Я борюсь часами без везения. Есть идеи? Код JQuery также приветствуется.
EDIT: Прямо сейчас я попытался создать массив объектов, как, что:
OBJ2=[];
$.each(OBJ, function(name, value) {
$(value).each(OBJ, function(name1, value1) {
OBJ2[name1]=[];
$(value1).each(OBJ, function(name2, value2) {
OBJ2[name1][name2]={};
OBJ2[name1][name2]['S1']={};
})
})
Но этот шаг не удается, так как каждый ... [ «S1»] присваивание перезаписывает предыдущий объект (например, S2).
Прошу игнорировать любые опечатки, я только что воссоздал логику.
Можете ли вы показать нам некоторые из кода, который вы уже пробовали, который не сработал? –
Я могу придумать волшебство, зачем это делать. просто переместите объект и замените значения. – gdoron
Похоже, вы ищете самый сложный способ сделать что-то. – frenchie