J'ai un tableau que j'ai créé en TypeScript et il a une propriété que j'utilise comme clé. Si j'ai cette clé, comment puis-je en supprimer un élément?
arrays
typescript
collections
Tim Almond
la source
la source
var index: number = myArray.indexOf(key, 0);
indexOf
retourne unnumber
?index
plus d'une fois un lieu et l'un de ces endroits (splice
) veut voir un nombre ou vous obtiendrez une erreur. Actuellement, le compilateur ne peut pas vous empêcher de faire des erreurs.var index = myArray.findIndex(x => x.prop==key.prop);
.delete myArr[2]
supprime littéralement la propriété2
demyArr
, qui est également différente demyArr[2] = undefined
. La morale de cette histoire est de simplement l'utilisersplice
pour cette tâche, car c'est un moyen sûr d'obtenir l'effet souhaité sans confondre les effets secondaires.Si tableau est un type d'objets, alors la manière la plus simple est
la source
this.foo_objects = this.foo_objects.filter(obj => obj !== foo_object)[0];
deleteById(id: string) { this.data = this.data.filter(d => d.id !== id); }
Un seul mot d'avertissement, si les ID ne sont pas uniques, vous les supprimerez tous avec le mêmeid
Avec ES6, vous pouvez utiliser ce code:
la source
C'est ma solution pour ça:
la source
Vous pouvez utiliser le
splice
méthode sur un tableau pour supprimer les éléments.par exemple, si vous avez un tableau avec le nom,
arr
utilisez ce qui suit:ici, l'élément avec l'index 2 sera le point de départ et l'argument 2 déterminera le nombre d'éléments à supprimer.
Si vous souhaitez supprimer le dernier élément du tableau nommé,
arr
procédez comme suit:Cela renverra arr avec le dernier élément supprimé.
Exemple:
la source
laisser les ministères est un tableau. Vous souhaitez supprimer un élément de ce tableau.
la source
Voici un simple liner pour supprimer un objet par propriété d'un tableau d'objets.
ou
la source
Répondre à l'aide de l'opérateur d'étalement TypeScript (...)
la source
Encore une solution en utilisant Typescript:
la source
Utilisez-le si vous devez supprimer un objet donné d'un tableau et que vous voulez être sûr de ce qui suit:
la source
Je voulais juste ajouter une méthode d'extension pour un tableau.
la source