I asked a question a day ago about getting the length of an array that was nested inside an array that was inside an object. Now that I am able to get the correct information to console, I am getting the following in place of where the text should be:
[object HTMLUListElement]
Here is the code I am working with (please keep in mind I have been scouring the forums for answers, so there may be some code that is left over from different recommendations that is useless):
var experience = document.getElementById('experience');
var entryDescriptions = document.createElement('ul');
for (i = 0; i < resumeData.experience.length; i++) {
var experienceEntryDiv = document.createElement('div');
experienceEntryDiv.className = "experienceEntryDiv";
var entryTitle = '<h1>' + resumeData.experience[i].title + '</h1>';
var entryOrganization = '<h2>' + resumeData.experience[i].organization + '</h2>';
var entryYears = '<h1 class="text-right"><small>' + resumeData.experience[i].startYear + ' - ' + resumeData.experience[i].endYear + '</small></h1>';
for (j = 0; j < resumeData.experience[i].descriptions.length; j++) {
descriptionCounts = resumeData.experience[i].descriptions.length;
console.log(descriptionCounts);
var entryDescItem = document.createElement('li');
entryDescItem.className = "entryDescItem";
var entrydesc = document.createTextNode(resumeData.experience[i].descriptions[j]);
entryDescItem.appendChild(entrydesc);
entryDescriptions.appendChild(entryDescItem);
}
var entryHTML =
'<div class="entry">' +
'<div class="row">' +
'<div class="col-md-9">' + entryTitle + entryOrganization + '</div>' +
'<div class="col-md-3">' + entryYears + '</div>' +
'</div>' +
'<div class="row"><ul>' + entryDescriptions + '</ul><hr /></div>' +
'</div>' +
'<br />';
experienceEntryDiv.innerHTML = entryHTML;
experience.appendChild(experienceEntryDiv);
}
Here is my data (there is more data, I am just showing an example):
var resumeData = {
experience: [{
title: 'Title',
organization: 'Company Name',
startYear: 2017,
endYear: 2017,
descriptions: [
'Using code stuff',
'Used more code stuff'
]
},
{
title: 'Title',
organization: 'Company Name',
startYear: 2017,
endYear: 2017,
descriptions: [
'Using code stuff',
'Used more code stuff'
]
},
{
title: 'Title',
organization: 'Company Name',
startYear: 2017,
endYear: 2017,
descriptions: [
'Using code stuff',
'Used more code stuff'
]
},
{
title: 'Title',
organization: 'Company Name',
startYear: 2017,
endYear: 2017,
descriptions: [
'Using code stuff',
'Used more code stuff'
]
}
]
}
Originally, I was trying to figure out how to get the length in the second FOR loop. That got worked out, but now when I pull up the page, I get the Title, Organization, start and end years, but for descriptions I get:
[object HTMLUListElement]
Thanks!
[object HTMLUListElement]