尝试返回对象并显示其属性

时间:2018-09-04 11:40:28

标签: javascript

  1. 我正在从Spotify API获取一些数据。
  2. 创建对象并从返回的JSON数据中保存一些值
  3. 返回对象 4 ..尝试显示对象数据。

    /* API ROUTES */
    router.get('/', (req, res) => { 
       // Get artist
       const data = getArtist('Drake');
       if(data) {
        console.log(data.id);
       } else {
         console.log('nothing in data');
       }
    
    
    });
    
    // Get an artist name
    function getArtist(name) {
    
    
     spotify
      .search({ type: 'artist', query: name })
      .then(function(response) {
    
        // Gets Name and Id of the artist
        const data = {
          "id": response.artists.items[1].id,
          "name":  response.artists.items[1].name
        }
    
        return data;
      })
      .catch(function(err) {
        console.log(err);
      });
    }
    
  

显示错误:数据中无内容。

来自JAVA不确定我在Javascript中做错了什么。有想法吗?有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

Try This:   

    router.get('/', (req, res) => { 
       // Get artist
       getArtist('Drake').then( (response) => {
         if(response) {
            const data = {
               "id": response.artists.items[1].id,
               "name":  response.artists.items[1].name
            }
            console.log(data.id);
         } else {
             console.log('nothing in data');
         }
       });
   });  

    // Get an artist name
    function getArtist(name) {
        return spotify.search({ type: 'artist', query: name });
    }