2010-02-20 8 views
2

J'ai un tableau javascript (à partir d'un yahoo pipe via JSONP) dans lequel j'ai un sous-tableau appelé 'moby'.Condensing un tableau Javascript

Je voudrais changer la structure actuelle:

value { 
    callback => blah, 
    generator => blah, 
    items { 
    0 { 
     author => blah, 
     category => blah, 
     moby { 
     day_no => 168, 
     more => Keep_this_stuff 
    }, 
    1 { 
     author => blah, 
     category => blah, 
     moby { 
     day_no => 167, 
     more => Keep_this_stuff 
    },... etc 
    } 
} 

Dans un objet plus clairsemée qui ressemble à ceci:

moby { 
    168 { 
    day_no => 168, 
    more => Keep_this_stuff 
    }, 
    167 { 
    day_no => 167, 
    more => Keep_this_stuff 
    },... etc 
} 

Je sais comment je ferais en rubis (avec le funky Array.collect) mais je n'ai aucune idée en Javascript! Des indices? (Je jQuery chargé dans la page que je vais utiliser cela sur)

Répondre

2

jQuery's fonction map pourrait être utilisé pour transformer un tableau d'éléments dans un autre tableau en utilisant une fonction de traduction:

var result = $.map(value.items, function(element, index) { 
    return element.moby; 
}); 
+0

utilisation bien de jQuery carte, mais cela ne retourne pas exactement ce qu'il veut. Pourtant, c'est un indice assez bon, alors voici un upvote. –

+0

C'est 90% là. Bonne réponse. –

+0

Assez bon pour moi! À votre santé! –

Questions connexes