Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JS中console.log与return的问题_Javascript_Arrays_Javascript Objects_Template Literals - Fatal编程技术网

Javascript JS中console.log与return的问题

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

我在这里遇到了一些问题,我希望得到一些帮助。我有以下带有for循环和模板文本的函数。如果我使用console.log,我会得到我期望的结果(发布在下面),但是如果我尝试返回它,我会得到UnfinedUndefined或object。此外,按照我在这里编写的方式,我无法从return语句中的for循环访问[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;nincrementor
    i
    的作用域在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)这有帮助,而且更干净。感谢您的及时帮助和回复!