Как правильно создать JSON в javascript?

надо создать документ такого вида

{
    "menu0":{"title":"Для нее","id":57,"cat":1},
    "menu1":{"title":"Для дома","id":62, "cat":1},
    }

пытаюсь создать так

$("#secure").click(function (e) {
            e.preventDefault();
            var menu
            $( "#sortable li" ).each(function (i) {
                var id = $(this).data('id');
                var cat = $(this).data('cat');
                var title=$(this).data('title');
                //var menu={title: title, id: id, cat: cat };
               var addmenu ={menu:menu}
                console.log(JSON.stringify(addmenu));
            });
            console.log(JSON.stringify(menu));
        });

получаю так

{"menu":{"title":"Для нее","id":57,"cat":1}}
    {"menu":{"title":"Для дома","id":62,"cat":1}}

как правильно не понимаю
  • Вопрос задан
  • 2196 просмотров
Решения вопроса 1
0lorin
@0lorin
программист
Не так ли?
$("#secure").click(function (e) {
    e.preventDefault();
    var menu = {};
    var i = 0;
    $( "#sortable li" ).each(function (i) {
        menu["menu" + i++] = {
            id: $(this).data('id');
            cat: $(this).data('cat');
            title: $(this).data('title');
        };
    });
    console.log(JSON.stringify(menu));
});
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@vshvydky
let object = {data : []};
let object1 = {menu:{title:"Для нее",id:57,cat:1}};
let object2 = {menu:{title:"Для меня",id:57,cat:2}};
object.data.push(object1);
object.data.push(object2);
console.log(JSON.stringify(object));

Или если хочется уж совсем типо menu1 menu2 можно явно
object.menu1 = {title:"Для нее",id:57,cat:1};
object.menu2 = {title:"Для меня",id:57,cat:2};

Или
object = {
menu1:  {title:"Для нее",id:57,cat:1},
menu2:  {title:"Для нее",id:57,cat:2};
}

Или
object['menu1'] =  {title:"Для нее",id:57,cat:1};
object['menu2'] =  {title:"Для нее",id:57,cat:2};

А лучше идти и учить базовую теорию языка...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
25 нояб. 2024, в 15:52
3000 руб./за проект
25 нояб. 2024, в 15:43
1500 руб./за проект