При переборе значений Dom не работает push()
есть код
const xmlString = ` <list> <student> <name lang="en"> <first>Ivan</first> <second>Ivanov</second> </name> <age>35</age> <prof>teacher</prof> </student> <student> <name lang="ru"> <first>Петр</first> <second>Петров</second> </name> <age>58</age> <prof>driver</prof> </student> </list> `; const parse = new DOMParser(); const xmlDOM = parse.parseFromString(xmlString,"text/xml"); //console.log(xmlString); const listNode = xmlDOM.querySelectorAll("student"); let Arr = [], list = {}; let i=0; var div_array = [...listNode]; listNode.forEach(student =>{ const age1 = student.querySelector("age").textContent; const prof1 = student.querySelector("prof").textContent; const name1 = student.querySelector("first").textContent + " " + student.querySelector("second").textContent; console.log(age1, prof1, name1); const langAttr1 = student.querySelector("name").getAttribute("lang") ; list.name = name1; list.prof = prof1; list.age = age1; list.lang = langAttr1; console.log(list); console.log("----------"); Arr.push(list); console.log(Arr); }); функция Arr.push(list); должна добавлять в пустой массив 2 значения : но добавляет одно и то же 2 раза вместо 2-х разных. Подскажите пожалуйста что не так. |
lnnansy,
Пожалуйста, отформатируйте свой код! Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [html run] ... минимальный код страницы с вашей проблемой [/html] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
Цитата:
Цитата:
|
Часовой пояс GMT +3, время: 06:06. |