我想制作这样的东西
album = {[
name:'',
image:'',
tracks:[]
],[
name:'',
image:'',
tracks:[]
]}
但现在我坚持将值附加到正确的 json 对象中。
var albums = {};
$.get("https://api.spotify.com/v1/artists/1rQX6kg84TqcwGtZHYIdn4/albums", function(data, status) {
tempArr = [];
$.each(data.items, function(i, obj) {
tempArr.push(obj.images[0].url);
albums['image'] = tempArr;
});
console.log(albums)
});
您可以在这里查看专辑数据http://jsfiddle.net/u5me8csx/1 有什么帮助吗?
最佳答案
albums
对象问题中的语法是错误的,您交换了用于对象和数组表示法的括号。
您可以使用 Array.map() 迭代项目并创建所需的格式,例如
$.get("https://api.spotify.com/v1/artists/1rQX6kg84TqcwGtZHYIdn4/albums", function(data, status) {
var albums = data.items.map(function(item) {
return {
name: item.name,
image: item.images[0],
tracks: []
}
});
console.log(albums);
$('#result').text(JSON.stringify(albums, null, 2))
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<pre id="result"></pre>
关于javascript - 使用 $.each 将值放入数组对象中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36002492/