Try map:
The map()
method creates a new array populated with the results of calling a provided function on every element in the calling array.
const projects = [...document.getElementsByClassName("nav-project")]
.map(div => div.id);
console.log(projects);
<div class="nav-project" id="one">a</div>
<div class="nav-project" id="two">b</div>
<div class="nav-project" id="three">c</div>
<div class="nav-project" id="four">d</div>
<div class="nav-project" id="five">e</div>
I would use Array.from()
to convert a NodeList to an array of ids:
const projects = Array.from(
document.querySelectorAll('.nav-project'),
el => el.id
)
console.log(projects)
<div class="nav-project" id="one">a</div>
<div class="nav-project" id="two">b</div>
<div class="nav-project" id="three">c</div>
<div class="nav-project" id="four">d</div>
<div class="nav-project" id="five">e</div>
I would like to return only the id of each div and keep them in an array :
const projects = [...document.getElementsByClassName("nav-project")];
console.log(projects);
//expected output : [one, two, three, four, five]
<div class="nav-project" id="one">a</div>
<div class="nav-project" id="two">b</div>
<div class="nav-project" id="three">c</div>
<div class="nav-project" id="four">d</div>
<div class="nav-project" id="five">e</div>
@HereticMonkey well the amount of items in the other question made it a bit different though