IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

TypeScript Discussion :

Déclarer un tableau


Sujet :

TypeScript

  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 160
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 160
    Par défaut Déclarer un tableau
    Bonjour,

    Je collecte les positons de plusieurs stations que je dois afficher sur une Map

    Exemple de deux stations:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    export const markers = [
    	// San Francisco
    	{
    		latitude: 37.7749,
    		longitude: -122.4194,
    		latitudeDelta: 0.01,
    		longitudeDelta: 0.01,
    		name: 'San Francisco City Center'
    	},
    	{
    		latitude: 37.8077,
    		longitude: -122.475,
    		latitudeDelta: 0.01,
    		longitudeDelta: 0.01,
    		name: 'Golden Gate Bridge'
    	}
    ];
    J'ai compris qu'en faisant ceci, ca fonctionne mais j'ai une erreur
    Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
      const myMrker = [
     
      ]
     
     
      data?.stations.map((s) => {
        myMrker.push({
          latitude : s.lat, 
          longitude : s.lng, 
          latitudeDelta : 0.2, 
          longitudeDelta: 0.2, 
          name: s.station_longname
        })
      }) 
    console.log(myMarker)

    Visual Studio Code me souligne myMarker
    Nom : Screenshot 2025-01-01 at 16.43.36.png
Affichages : 136
Taille : 77,5 Ko

    Si je le modifie ainsi, j'ai une autre erreur plus
    Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      const myMArker:any = [
     
      ]
    Nom : Screenshot 2025-01-01 at 16.45.13.png
Affichages : 130
Taille : 80,2 Ko

    Je pense que ceci est parce que mon tableau a à mélange de types (4 number et 1 string)

    J'ai essayé ceci sachant que cela ne fonctionnera pas avec un push

    Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
      const myMArker = {
    latitude: number,
        longitude: number,
        latitudeDelta: number,
        longitudeDelta: number,
        name: string
      }

    Ma question est comment bien déclarer ce tableau ou est-ce que c'est au niveau de ma map(), que je dois vérifier ceci?

    Merci pour vos lumières et bonne année à vous

  2. #2
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 489
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 489
    Par défaut
    attention a tes majuscules/minuscules, sois consistant.

    le mieux pour t'entrainer est de declarer ton type avant
    Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    type Marker = {
        latitude: number;
        longitude: number;
        latitudeDelta: number;
        longitudeDelta: number;
        name: string;
      };
    puis, dans ton code, quand tu declares ta variable, tu lui dit d'etre de ce type
    Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
    const markers:Marker[] = []; // note : ici je dis que c'est un tableau de "Marker"
    ainsi, tu pourras utiliser le push() et n'importe quelle autre function lie aux tableaux
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 160
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 160
    Par défaut
    Salut Doksuri

    Merciiiii beaucoup!!!

    attention a tes majuscules/minuscules, sois consistant.
    Que veux-tu dire par là?
    Il est recommandé ou obligatoire de nommer le typage avec la première lettre en majuscule et les const tout en minuscule, comme tu le propose?

  4. #4
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 489
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 489
    Par défaut
    dans les exemples que t'as fournis, t'as :

    const markers...
    const myMrker...
    const myMArker...

    c'est un coup a se tromper de variable
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 160
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 160
    Par défaut
    Oui ne effet, merci!

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 160
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 160
    Par défaut
    Hello

    je voulais savoir si tu pouvais encore m'aider dans ce type de problème. J'ai passé la journée à me prendre le chous, sûrement en train de tourner autour de la solution

    Je dois reproduire ca, dynamiquement

    Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    const DATA = [
          {
            title: 'Mesures',
            data: [
              [{value: 1, label: "RRRR"}, {value: 2}, {value: 3}, {value: 4}], 
              [{value: 4}, {value: 3}, {value: 2}, {value: 1}], 
              [{value: 1}, {value: 1}, {value: 3}, {value: 6}]
            ],
          }
        ];

    J'a essayé milles choses, alors je laisse ce que j'ai en dernier

    Mon type est le suivant

    Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    type Donnees={
          title:string | undefined,
          data: []
         }

    Je déclare ma valiable dont le contenu (ou disons plus tôt la structure) doit être le même (au final) que DATA.

    Je map mes mesures

    Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    measures?.map((d,i) => {
          console.log("ZZZZZZ:")
          console.log(d.datasets?.data)
    }
    le console log m'affiche
    [{"dataPointText": 26.9, "date": "2023-06-22 12:24:58", "label": "Jun-22", "value": 26.9}, {"dataPointText": 28.3, "date": "2023-06-22 12:42:21", "value": 28.3}, {"dataPointText": 29.8, "date": "2023-06-22 12:59:50", "value": 29.8}, {"dataPointText": 28, "date": "2023-06-22 13:17:20", "value": 28}]
    ce qui représente mon premier graph pour le premier capteur

    Donc pour le moment je devrais avoir ca (pour mon premier passe dans 'measures

    Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    const DATA = [
          {
            title: 'Mesures',
            data: [
             [{"dataPointText": 26.9, "date": "2023-06-22 12:24:58", "label": "Jun-22", "value": 26.9}, {"dataPointText": 28.3, "date": "2023-06-22 12:42:21", "value": 28.3}, {"dataPointText": 29.8, "date": "2023-06-22 12:59:50", "value": 29.8}, {"dataPointText": 28, "date": "2023-06-22 13:17:20", "value": 28}], 
              [{value: 4}, {value: 3}, {value: 2}, {value: 1}], 
              [{value: 1}, {value: 1}, {value: 3}, {value: 6}]
            ],
          }
        ];

    Puis dans mon deuxième passe dans 'measures', il doit a remplacer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      [{value: 4}, {value: 3}, {value: 2}, {value: 1}], 
              [{value: 1}, {value: 1}, {value: 3}, {value: 6}]

    Je pense que vous me suiver.

    Mon problème et que je n'arrive paaaaas à faire cette construction dynamique, et je pense que je déclare ma mes const. Voici le suite de mon map

    Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    const donnees:Donnees[]=[]
         measures?.map((d,i) => {
          console.log("ZZZZZZ:")
          console.log(d.datasets?.data)
     
          donnees.push({
            title: d.datasets?.label,
            data: d.datasets?.data
              //value: d.datasets?.data?.[0],
            } //d.datasets?.data?.[0]
            //data: d.datasets?.data?.[i],
          )
         })
     
    CS Code m'arriche une erreur à niveau de data: d.datasets?.data
    Nom : Screenshot 2025-01-06 at 21.34.12.png
    Affichages : 62
    Taille : 119,9 Ko
     
    PS; j'avais, avant definie, label, value, date, ect dans data, mais toutes mes tentatives ont évhouées. Alors si vous pouviez m'aider, ca me serait, mais grandement utile :D
     
    Toute belle soirée
        console.log("Donnee")
        console.log(donnees)

  7. #7
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 160
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 160
    Par défaut
    J'ai finallement réussi, mais ce que j'ai galèré!!!


    Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    const dataset = new Array()     
        measures?.map((d,i) => {
          dataset.push( {
            title: {
              title: d.datasets?.label,
              fontawesome: d.sensor_type_awe
            },
            data: [d.datasets?.data]
          })
        })

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. trier un tableau et compter des elements du tableau
    Par remi51 dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 17/06/2002, 16h51
  2. Réponses: 2
    Dernier message: 27/05/2002, 19h46
  3. verification de doublons dans un tableau
    Par bohemianvirtual dans le forum C
    Réponses: 11
    Dernier message: 25/05/2002, 12h21
  4. transmision de tableau en parametre
    Par Horus dans le forum C++Builder
    Réponses: 3
    Dernier message: 16/05/2002, 11h15
  5. Réponses: 4
    Dernier message: 13/05/2002, 16h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo