Jump to content
AndréAraujo

(Promise.all) Erro na leitura de um objeto com array multidimensional

Recommended Posts

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!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By juh2425
      sou novo no php e js gostaria de saber como faço validação da data pra que se o usuario digitar o dia maior que a data atual de alert de data invalida
      <script> $("#btn__procurar").click(function () { if ($("#data_inicial").val().trim() == "") { alert("Digite a data inicial"); return false; } if ($("#data_final").val().trim() == "") { alert("Digite a data final"); return false; } }); </script>  
    • By giovaniif
      Boa tarde, eu estou com um projeto em que tenho que armazenar um dado de um TextInput e validar se ele está vazio ou se tem algum valor.
      Eu ja tentei usar setState no input e chamar uma função que valida, porem pelo que me parece o valor do input não está sendo armazenado (como se o setState não estivesse funcionando).
      Estou começando agora com react-native, espero que tenha sido possivel entender minha pergunta.
      Agradeço desde já.
       
      constructor(props){ super(props); this.state = { name: '', } } <Nome /> ``` Aqui é onde o usuario digita o nome e seria armazenado na propriedade "name: " ```
    • By erismarcds
      Olá, estou desenvolvendo um site, e adicionei um player de musica no rodapé do site, só que toda vez que entro em uma pagina do site ele começa a tocar novamente, quero deixar ele pra continuar tocando mesmo mudando de pagina.
    • By lucasbr2312
      Eu tenho um carousel do bootstrap e me foi proposto que quando trocasse o slide, fizesse uma pequena animação nos elementos dentro dele
      Algo assim:
      if($('#item-2').hasClass('active')){ $('.imagem-carousel').fadeIn(2000) }   Mas eu queria saber como eu faço pra que essa condição seja verificada sempre que o slide for trocado, seja por click, arrastando ou quando o slide passa automaticamente. 
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.