Я пытаюсь создать новый объект Javascript из атрибутов, извлеченных из DOM с помощью jQuery. информацию я пытаюсь вытащить это данных- * от этого:Создание динамических объектов с помощью Javascript
<button type='button' class='pickup' data-name="apple" data-weight='1' data-color='red'>food</button>
Так что я хочу, чтобы получить имя-данных и данных-вес и поместить их в новый (или существующий, если я должен) объект. Вот где у меня проблемы. Я хочу, чтобы объект выглядеть следующим образом:
MyObject = {
food: {
weight: 1,
color: 'red'
}
}
Я пытался создать новый объект, как это через «для (вар я в MyObject)» цикл, но когда дело доходит до добавления атрибутов и значения в MyObject {} Я не могу понять, как заставить его работать.
Любые идеи или предложения?
Ответы ниже работали отлично! Спасибо! Как если бы я хотел, чтобы динамически создавать:
MyObject.food = {}
из переменной, например:
var Name = "meal";
MyObject.Name = {} // creates MyObject.meal = {};
Как бы мне это сделать? Я думал, что MyObject [Name] = {} будет работать, но мне это не показалось. Может, я набрал это неправильно? : S
если нет, 'document.querySelector (". Pickup "). GetAttribute (" data-name ")' будет делать то же самое. – JKing
@ Комментарий JKing касается того, что я сказал перед моим редактированием. Я спросил, нормально ли использовать jQuery. Но потом я заметил, что он уже использовал его. Сохраняйте свой комментарий там. Я не знал об этом. + 1'd – Chris
Спасибо за это! С вашим редактированием, удаляющим контекст того, что я имел в виду, я действительно немного схожу с ума. Кроме того, это смешно, я не могу сказать, сколько раз я видел, как кто-то просто использовал «запрос» часть jQuery и взорвал их мысли с помощью документа.querySelector/querySelectorAll. Я не хочу отговаривать людей от jQuery, но есть много отличных/полезных вещей, которые он может сделать! Но вы можете сделать гораздо больше с ванильным JavaScript в эти дни, чем некоторые люди хотели бы вы поверить ... – JKing