(Promise.all) Erro na leitura de um objeto com array multidimensional
Olá, estou tentando enviar um array multidimensional para o Promise.all(), mas mesmo pegando
a property path direto do navegador o items["0"] aparece como undefined, é possível ver que o objeto
esta acessível pelo console.log(data[0]) ou console.log(data[1]), segue o código abaixo:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Promise Multidimensional Array</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
</head>
<body>
<button onClick="start()">Start</button>
<script>
function start(){
var array = [
["hTWKbfoikeg","Nirvana - Smells Like Teen Spirit"],
["1G4isv_Fylg","Coldplay - Paradise"],
["NMNgbISmF4I","Aerosmith - Crazy"],
["btPJPFnesV4","Survivor - Eye Of The Tiger"],
["gEPmA3USJdI","AC/DC - Highway to Hell"]
], promises = [], list = [];
for(var i =0; i < array.length; i++){
pushGet(array[i][0],array[i][1]);
//pushGet(array[i][0]);
}
Promise.all(promises).then(function(r){
r.forEach(function(data){
console.log(data[0]);
console.log(data[1]);
var title = data[1];
//var viewCount = parseInt(data["0"].responseJSON.items["0"].statistics.viewCount);
//var currentId = data["0"].responseJSON.items["0"].id;
list.push([/*viewCount,currentId,*/title]);
});
});
console.log(list);
function pushGet(id,title){
var val = $.getJSON("https://www.googleapis.com/youtube/v3/videos?part=contentDetails,statistics&id=" + id + "&key=AIzaSyDIWyCOtTKDFyH9N4YlQPBP8VG4NX3Pgp4");
promises.push([val,title]);
//promises.push(val);
}
}
</script>
</body>
</html>
Agradeço a atenção!Discussão (0)
Carregando comentários...