Javascript JS中console.log与return的问题
我在这里遇到了一些问题,我希望得到一些帮助。我有以下带有for循环和模板文本的函数。如果我使用console.log,我会得到我期望的结果(发布在下面),但是如果我尝试返回它,我会得到UnfinedUndefined或object。此外,按照我在这里编写的方式,我无法从return语句中的for循环访问[i]。有人能给我一些建议吗Javascript JS中console.log与return的问题,javascript,arrays,javascript-objects,template-literals,Javascript,Arrays,Javascript Objects,Template Literals,我在这里遇到了一些问题,我希望得到一些帮助。我有以下带有for循环和模板文本的函数。如果我使用console.log,我会得到我期望的结果(发布在下面),但是如果我尝试返回它,我会得到UnfinedUndefined或object。此外,按照我在这里编写的方式,我无法从return语句中的for循环访问[i]。有人能给我一些建议吗 renderPlaylistCard(){ for(设i=0;i
renderPlaylistCard(){
for(设i=0;i播放列表名称:${this.Name}
Title:${this.tracks[i].Title}
艺人:${this.tracks[i].Artist}
`
}
}
这是我在console.logged中得到的预期结果
Country Songs Fourth Song Kristy
Country Songs First Song Randy
Pop Songs Third Song Brady
Pop Songs Hip Hop Horray Randy
Pop Songs Second Song Kristy
如果我删除这一行,我将不再得到“undeinedundefined”
错误,因此我猜我在那里也做错了什么。任何帮助都将不胜感激
for(n=0; n<this.tracks; n++){ // when this is removed the undefinedundefined error is no more.
for(n=0;nincrementori
的作用域在for循环的该块内,这就是您无法在外部访问它的原因。我相信您尝试的操作可以通过以下方式完成:
renderPlaylistCard() {
let output = "";
for(let i=0; i < this.tracks.length; i++){
output += `
<div data-id=${this.id}>
<h4><li>Playlist Name: ${this.name}</h4></li>
<h4><li>Title: ${this.tracks[i].title}</h4></li>
<h4><li>Artist: ${this.tracks[i].artist}</h4></li>
</div>`;
}
return output;
}
renderPlaylistCard(){
让输出=”;
for(设i=0;i播放列表名称:${this.Name}
Title:${this.tracks[i].Title}
艺人:${this.tracks[i].Artist}
`;
}
返回输出;
}
循环应该是for(n=0;nHey@Bren)这有帮助,而且更干净。感谢您的及时帮助和回复!