2017-11-25 89 views
0

所以我有這個對象,當我console.log它,並在檢查員看它看起來很好。 Object in InspectorJavascript對象訪問;輸出正常,選擇不工作

但是,當我打印出來的對象的鑰匙,我只得到這個結果: Object Keys in Inspector

而一切,我認爲(object.value)後打印出看起來是這樣的:

ƒ(){return f&&(c&&!b&&(h=f.length-1,g.push(c)),function d(b){r.each(b,function(b,c){r.isFunction(c)?a.unique&&j.has(c)||f.push(c):c&&c.length&&"string"!==r.type(c)&&d(c)})}(arguments),c&&!b&&i()),this}

如何從第一張截圖訪問「responseJSON」?

一些可能很重要的背景信息: 我從spotify web-api獲得了對象,授權等工作都很好。

function getUserData(accessToken) { 
     return $.ajax({ 
      url: 'https://api.spotify.com/v1/me/player/currently-playing', 
      headers: { 
       'Authorization': 'Bearer ' + accessToken 
      } 
     }); 
    } 
+0

嘗試 'object.responseText' – Sudarshan

回答

1

這是因爲你正在枚舉一個jQuery延遲對象的屬性。延遲對象是異步的,您的情況來自HTTP請求。

要正確枚舉您的對象,您應該先等待它使用Deferred.then。從替換代碼:

console.log(Object.keys(your_object)) 

到:

your_object.then(function(result) { 
    console.log(Object.keys(result)) 
}).catch(function(err) { 
    console.error(err) 
}) 
+0

那工作只是完美的,謝謝! – thaiten