Actuellement, j'utilise Angular 2.0. J'ai un tableau comme suit:
var channelArray: Array<string> = ['one', 'two', 'three'];
Comment puis-je vérifier dans TypeScript si le channelArray contient une chaîne «trois»?
javascript
arrays
typescript
code1
la source
la source
channelArray: string[]
Réponses:
Identique à JavaScript, en utilisant Array.prototype.indexOf () :
Ou en utilisant ECMAScript 2016 Array.prototype.includes () :
Notez que vous pouvez également utiliser des méthodes telles que celles montrées par @Nitzan pour trouver une chaîne. Cependant, vous ne feriez généralement pas cela pour un tableau de chaînes, mais plutôt pour un tableau d'objets. Là, ces méthodes étaient plus sensées. Par exemple
Référence
Array.find ()
Array.some ()
Array.filter ()
la source
[ts] Property 'includes' does not exist on type 'string[]'
erreur, dois-je mettre à jour mon tsconfig pour prendre en charge cette fonctionnalité ecma 6?"lib": ["es7", "dom"]
Vous pouvez utiliser la méthode some :
Vous pouvez utiliser la méthode find :
Ou vous pouvez utiliser la méthode indexOf :
la source
Si votre code est basé sur ES7:
Sinon, par exemple, vous utilisez IE sans transbile babel:
la
indexOf
méthode retournera la position de l'élément dans le tableau, à cause de cela, nous utilisons!==
différent de -1 si l'aiguille se trouve à la première position.la source
Notez également que le mot clé "in" ne fonctionne pas sur les tableaux. Cela fonctionne uniquement sur les objets.
Le test d'inclusion de tableau est
la source
Utiliser la matrice JavaScript inclut la méthode ()
Essayez-le vous-même » lien
Définition
La méthode includes () détermine si un tableau contient un élément spécifié.
Cette méthode renvoie true si le tableau contient l'élément et false sinon.
la source
TS a de nombreuses méthodes utilitaires pour les tableaux qui sont disponibles via le prototype des tableaux. Il y en a plusieurs qui peuvent atteindre cet objectif, mais les deux plus pratiques à cet effet sont:
Array.indexOf()
Prend n'importe quelle valeur comme argument, puis retourne le premier index auquel un élément donné peut être trouvé dans le tableau, ou -1 s'il n'est pas présent.Array.includes()
Prend n'importe quelle valeur comme argument, puis détermine si un tableau inclut une cette valeur. La méthode retournetrue
si la valeur est trouvée, sinonfalse
.Exemple:
la source
Vous pouvez
filter
aussi utiliserla source
fait comme ça:
la source