Je souhaite supprimer une ou plusieurs "colonnes" d'une collection (tableau d'objets) en JavaScript avec Lodash.
Par exemple, dans la collection suivante:
var users = [
{ "name": "barney", "age": 36, "alum": true },
{ "name": "fred", "age": 40, "alum": false }
];
... je veux peut-être supprimer toutes les colonnes qui commencent par la lettre A ou quelque chose de similaire.
Je sais que je peux réaliser quelque chose de similaire pour chaque objet en utilisant le _.omit()
méthode, mais cela ne semble pas coller si je le fais dans un each
boucle.
Quelle est la meilleure façon de s'y prendre avec Lodash?
Réponses:
3 pour la réponse № 1Je sais que je peux réaliser quelque chose de similaire pour chaque objet en utilisant le
_.omit()
méthode, mais cela ne semble pas coller si je le fais dans uneach
boucle.
Car omit
renvoie un nouvel objet, et each
ne fait rien au tableau.
Vous voulez utiliser map
pour obtenir un nouveau tableau avec les nouveaux objets:
users = _.map(users, function(user) {
return _.omit(user, function(value, key) {
return key.charAt(0) == "a";
});
});