Tengo una declaración for of en JS que devuelve ID de elementos HTML pero están en múltiples salidas. Me gustaría tomar estas salidas y ponerlas en una matriz.
Por ejemplo, el HTML es:
<div>
<button id="savebtn-1"></button>
</div>
<div>
<button id="savebtn-2"></button>
</div>
y mi JS es:
const elements = document.querySelectorAll("button");
for (const element of elements) {
let id = elements.getAttribute("id");
}
console.log(id) mostrará:
savebtn-1
savebtn-2
¿Cómo puedo obtener estas salidas en una matriz?
Gracias por cualquier atención que pueda dar a esta pregunta.
Haga otra matriz y almacene todas las identificaciones dentro de esa matriz.
const resultArray = [];
const elements = document.querySelectorAll("button");
for (const element of elements) {
const id = element.getAttribute("id");
resultArray.push(id);
}
console.log(resultArray);
<div>
<button id = "savebtn-1">Button 1</button>
</div>
<div>
<button id = "savebtn-2">Button 2</button>
</div>
Use Array.from() en NodeList y un mapeador personalizado para extraer las ID
const idArray = Array.from(
document.querySelectorAll("button"),
({ id }) => id
);
console.log(idArray);
<div>
<button id="savebtn-1">Button #1</button>
</div>
<div>
<button id="savebtn-2">Button #2</button>
</div>