Spotify Web Api Devices

  • JavaScript

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von Walk Me Home.

    Spotify Web Api Devices

    Hallo zusammen!

    Nach einiger Herumbastelei habe ich es endlich geschafft, dass mir über die SPotify Web Api die verfügbaren Geräte in der Console angezeigt wird.

    Nun würde ich halt gerne etwas genauer damit arbeiten und Beispielsweise nur die IDs herausfiltern. Leider ist mir das bisher nicht gelungen, da bei folgendem Code:

    Quellcode

    1. var newData = JSON.stringify(data.id)
    2. document.getElementById('devices').innerHTML = newData;


    Erscheint nur "undefined" wenn es ausgeführt wird.

    Ein

    Quellcode

    1. var newData = JSON.stringify(data.id(0))
    2. document.getElementById('devices').innerHTML = newData;


    führt nur dazu dass angezeigt wird dass id keine Funktion von Data ist.

    In der Console wird folgendes angezeigt (nach console.log(data) )

    Quellcode

    1. {devices: Array(2)}
    2. devices: Array(2)
    3. 0:
    4. id: "xxxx"
    5. is_active: false
    6. is_private_session: false
    7. is_restricted: false
    8. name: "xxxx"
    9. type: "Computer"
    10. volume_percent: 100
    11. __proto__: Object
    12. 1:
    13. id: "xyd"
    14. is_active: false
    15. is_private_session: false
    16. is_restricted: false
    17. name: "abc"
    18. type: "Computer"
    19. volume_percent: 74
    20. __proto__: Object



    Kann mir da jemand weiterhelfen?

    Beste Grüße
    Hi, also du versuchst auf data.id zu zugreifen, das kann aber nicht funktionieren da data ein Array ist das n Elemente enthält. data.id(0) ist komplett falsch, da data keine Funktion/Methode enthält die id heißt.

    Du musst durch die Elemente im data-Array iterieren, also brauchst du eine Schleife:

    JavaScript-Quellcode

    1. for (var i = 0; i < data.length; i++)
    2. {
    3. console.log(data[i].id);
    4. }


    Edit:
    Alternativ könntest du mittels "map" eine Property von deinen Objekten auswählen bzw in ein neues Array schreiben und das mit "join" zu einem String zusammen fügen lassen:

    JavaScript-Quellcode

    1. data.map(x => x.id).join(', ')
    Ah dann habe ich wohl deinen Angaben falsch verstanden, versuch es mal mit data.devices.length und data.devices[i] für die Schleifen bzw. für den alternativen Weg data.devices.map(x => x.id).join(', ')