2017-10-04 2 views
-2

Je perds un peu avec lodash. J'ai un tableau comme celui-ci:Tableau d'analyse avec lodash

["01017-00-0000", 
"01025-00-0000", 
"10000-01-1112", 
"10000-01-1223", 
"10000-01-1224", 
"10000-01-1551", 
"10000-01-1552", 
"10000-02-2702",] 

et je veux obtenir quelque chose comme ça:

. 01017 
    . all users 
. 01025 
    . all users 
. 10000 
    . Sections : 01, 02 
    . Users : 01-1112, 01-1223, 01-1224, 01-1551, 01-1552, 02-2702 

J'essaie de faire en testeur en ligne, mais, je deviens fou! S'il vous plaît aidez-moi!

Merci à tous!

+3

Bienvenue sur Stack Overflow! Nous décourageons les publications qui énoncent simplement un problème hors contexte et attendent de la communauté qu'elle le résolve. En supposant que vous avez essayé de le résoudre vous-même et que vous vous êtes coincé, il pourrait être utile que vous écriviez vos pensées et ce que vous ne pourriez pas comprendre. Il va certainement attirer plus de réponses à votre message. D'ici là, la question sera votée pour être fermée/abaissée. – Cerbrus

+2

Quel type de structure de données voulez-vous? – abhishekkannojia

+0

http://idownvotedbecau.se/noattempt/ et parce que votre question n'a pas beaucoup de sens. – Amy

Répondre

0

Voici mon exemple pour le démarrage

var existant = ["01017-00-0000", 
"01025-00-0000", 
"10000-01-1112", 
"10000-01-1223", 
"10000-01-1224", 
"10000-01-1551", 
"10000-01-1552", 
"10000-02-2702",]; 

result=[]; 
_.filter(existant ,function(o) { 
    var p = o.substr(0,5); 
    var t = o.substr(6,2); 
    bloc=[]; 
    blocll=[]; 
    bloc.push(p); 
    if (t == '00') { blocll.push('All users'); } 
    else 
    { _.filter(existant, function(oo){ 
    var pp = oo.substr(0,5); 
    var tt = oo.substr(6,2); 
    var ll = oo.substr(9,4); 
    if(pp == p && tt == t) { blocll.push(ll); } 
    }) ;  
    } 
    bloc.push(blocll); 
    result.push(bloc); 
}); 
console.log(result); 
+0

Merci, je l'ai trouvé .... – McNeo