Remplir un tableau 2D..

Maz3310 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
Maz3310 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,


Je tente de developper un outil sur google script (langage proche du javascript, donc je pense que poser ma question ici est pertinent) mais je me retrouve bloque.


Je tente desesperement de remplir un tableau 2D. Aucun soucis pour la premiere ligne, mais la 2eme coince..


Voici mon code :


var hour = 6;

var baseArray = [[], []];

for (var i = 0; i <= 1; i++)
  {
    for (var j = 0; j <= 14; j++)
    {
      if (i == 0)
      {
        baseArray[[j][i]] = hour;
        hour+=1;
      }
      else
      {
        baseArray[[j],[i]] = 0 ;

        Logger.Log(baseArray[[j], [i]]);
      }
    }
  }


=========================================

Lorsque j'affiche le contenu de la ligne 2, il m'affiche "undifined"..

alors que je pense bien le remplir dans ma condition "else"..

Par contre la premiere ligne se remplie parfaitement.


Si quelqu'un a une idee je suis preneur ^^.

Merci d'avance!

A voir également:

2 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
var baseArr = [];


  for (var i = 0; i < 2; i++){  

    var value = [];
    for (var j = 0; j < 15; j++) {           
      value.push(j);
    }
    baseArr.push(value);
   }
  Logger.log(baseArr[10][1])

Bonjour

Essaye d'utiliser la methode push 

Par exemple 


0
Maz3310 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 

J'ai finalement compris mon erreur.

Il est impossible de creer un tableau 2d directement. Du coup, pour chaque ligne (i) du tableau, il faut creer une colonne (une sorte de tableau dans un tableau).

Voila ce que j'en ai compris. Ca donne array[i] = [];

Voila a quoi ressemble le code :

var hour = 6;
  var baseArray = [];

  for (var i = 0; i <= 1; i++)
  {
    baseArray[i] = [];
    for (var j = 0; j <= 14; j++)
    {
      if (i == 0)
      {
        baseArray[i][j] = hour;
        hour+=1;
      }
      else
      {
        baseArray[1][j] = 0 ;
      }
    }
    Logger.log(baseArray);
  }

0