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 :

JSON.parse et sort


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Décembre 2010
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 258
    Par défaut JSON.parse et sort
    Bonjour à tous,

    J'ai la chaîne de caractère suivante :

    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
     
    liste = "
    {
        id:2,
        nom:'Albert',
        position:17
    },
    {
        id:54,
        nom:'Toto',
        position:2
    },
    {
        id:101,
        nom:'Zoé',
        position:1
    }
    ";
    Du coup, mon objectif est la trier sur le paramètre position.
    J'ai donc la fonction classer comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    function classer(a, b) {
    	return a.position > b.position;
    }
    Et je trie mon JSON :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    liste = JSON.parse(liste);
    liste.sort(classer);
    Sous Firefox je récupère bien ma liste triée, mais sous iPhone, la liste est triée par nom et pas par position...
    Que se passe-t-il ?

    Voici la démo : https://jsfiddle.net/njwwhmvt/1/

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    Essaye
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function classer(a, b) {
    	return (a.position > b.position)?1:-1;
    }
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre éclairé
    Inscrit en
    Décembre 2010
    Messages
    258
    Détails du profil
    Informations forums :
    Inscription : Décembre 2010
    Messages : 258
    Par défaut
    C'est parfait ça fonctionne, merci pour ta réponse !

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 06/05/2012, 17h41
  2. Tri par clé lors d'un JSON.parse
    Par legentil dans le forum jQuery
    Réponses: 4
    Dernier message: 11/02/2012, 20h56
  3. JSON Parsing en JSONArray sur android
    Par S.Jihad dans le forum Android
    Réponses: 7
    Dernier message: 08/05/2011, 13h49
  4. Jersey Json parse
    Par allouli_raf dans le forum Format d'échange (XML, JSON...)
    Réponses: 0
    Dernier message: 20/04/2011, 15h32
  5. JSON parse et stringify
    Par sekaijin dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 05/11/2009, 15h36

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