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

JavaScript Discussion :

Formatage d'un array en JS


Sujet :

JavaScript

  1. #1
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2018
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 144
    Points : 79
    Points
    79
    Par défaut Formatage d'un array en JS
    Bonjour,

    J'aimerais créer une auto-complétion à partir d'une API.

    L'API redescend d'une base de données, une liste avec le nom de la commune, le code de la commune et le code du pays.

    La réponse de l'API est un objet json comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    {
        "total": 2,
        "records": [
            {
                "code_pays": "SUI",
                "code_entite": "0842",
                "nom_entite": "Lauenen"
            },
            {
                "code_pays": "SUI",
                "code_entite": "0863",
                "nom_entite": "Burgistein"
            }
    }
    Chaque valeur est associée à une clé.


    Pour le développement d'une application, la méthode autocomplétion de Materialize (Javascript) demande un formatage de l'objet json comme suit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    var json = {
    "Microsoft":"Bill Gates",
    "Apple":"Steve Jobs"
    }
    Chaque valeur est associée à une clé de valeur variable.

    J'ai posé la même question sur le forum PHP dans l'optique de créer une autocomplétion côté API.
    Cette question sur le forum JS dans l'option de formater le json côté front.

    Est ce que qqun aurait une solution pour générer un objet JSON comme celui là ?

    Merci pour vos retours

    Sylvain

  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 436
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 436
    Points : 4 930
    Points
    4 930
    Par défaut
    Bonjour,

    Vous devez parcourir le jsonApi.records avec une boucle (map dans cet exemple) comme suite :
    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
    18
    19
    let jsonApi={/*L'objet de l'API....*/}
    ,jsonAutocomplete=jsonApi.records
    .map(elem=>{
          return {"Nom Entite":elem.nom_entite,"Code Entite":elem.code_entite,"Code pays":elem.code_pays};
    });
    console.log("json :",jsonAutocomplete);
    /*Résultat :
    [
        {
            "Nom Entite": "Lauenen",
            "Code Entite": "0842",
            "Code pays": "SUI"
        },
        {
            "Nom Entite": "Burgistein",
            "Code Entite": "0863",
            "Code pays": "SUI"
        }
    ]*/
    Ou bien affecter directement jsonApi.records à l'objet d'auto-complétion si vous voulez garder les mêmes noms de clés originales
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    let jsonAutocomplete=jsonApi.records;

  3. #3
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2018
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 144
    Points : 79
    Points
    79
    Par défaut
    @Toufik, j'ai essayé ce code que j'ai adapté à mon besoin.

    Je me suis finalement rabattu sur l'autocomplete de DevBridge (devbridgeAutocomplete) qui demande des données moins formatées. Je le conseille, pas très difficile à mettre en place, et surtout bien adapté à des retour de bases de données et de réponses d'API.

    A+

    Sylvain

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

Discussions similaires

  1. Formatage conditionnel de cellules en fonction d'une donnée dans une array.
    Par Le_syd1961 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 09/08/2019, 12h42
  2. Classe de formatage HTML par catégorie d'un array PHP
    Par Dendrite dans le forum Contribuez / Téléchargez Sources et Outils
    Réponses: 18
    Dernier message: 10/05/2018, 11h24
  3. [MySQL] fputcsv et formatage d'un array
    Par legrandse dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 14/07/2017, 14h14
  4. Formatage array retourné par fetchAll()
    Par thejocker9 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 03/06/2016, 16h55
  5. pb formatage document XML généré par un dom tree
    Par lionel69 dans le forum APIs
    Réponses: 11
    Dernier message: 17/10/2002, 09h53

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