Derzeit verwende ich Angular 2.0. Ich habe ein Array wie folgt:
var channelArray: Array<string> = ['one', 'two', 'three'];
Wie kann ich in TypeScript überprüfen, ob das channelArray eine Zeichenfolge 'drei' enthält?
javascript
arrays
typescript
Code1
quelle
quelle
channelArray: string[]
Antworten:
Das gleiche wie in JavaScript mit Array.prototype.indexOf () :
Oder verwenden Sie ECMAScript 2016 Array.prototype.includes () :
Beachten Sie, dass Sie auch Methoden wie die von @Nitzan gezeigte verwenden können, um eine Zeichenfolge zu finden. Normalerweise würden Sie dies jedoch nicht für ein String-Array tun, sondern für ein Array von Objekten. Dort waren diese Methoden sinnvoller. Beispielsweise
Referenz
Array.find ()
Array.some ()
Array.filter ()
quelle
[ts] Property 'includes' does not exist on type 'string[]'
Fehlermeldung. Muss ich meine tsconfig aktualisieren, um diese ecma 6-Funktion zu unterstützen?"lib": ["es7", "dom"]
Sie können die Methode some verwenden :
Du kannst den ... benutzen Suchmethode verwenden :
Oder Sie können die indexOf-Methode verwenden :
quelle
Wenn Ihr Code auf ES7 basiert:
Wenn nicht, verwenden Sie beispielsweise den IE ohne babel transpile:
Die
indexOf
Methode gibt die Position des Elements im Array zurück. Aus diesem Grund verwenden wir eine!==
andere als -1, wenn sich die Nadel an der ersten Position befindet.quelle
Beachten Sie auch, dass das Schlüsselwort "in" bei Arrays nicht funktioniert. Es funktioniert nur bei Objekten.
Array-Inklusionstest ist
quelle
Verwenden Sie die JavaScript Array Includes () -Methode
Probieren Sie es aus » Link
Definition
Das beinhaltet () Methode bestimmt, ob ein Array ein bestimmtes Element enthält.
Diese Methode gibt true zurück, wenn das Array das Element enthält, und false, wenn nicht.
quelle
TS verfügt über viele Dienstprogrammmethoden für Arrays, die über den Prototyp von Arrays verfügbar sind. Es gibt mehrere, die dieses Ziel erreichen können, aber die beiden bequemsten für diesen Zweck sind:
Array.indexOf()
Nimmt einen beliebigen Wert als Argument und gibt dann den ersten Index zurück, an dem ein bestimmtes Element im Array gefunden werden kann, oder -1, wenn es nicht vorhanden ist.Array.includes()
Nimmt einen beliebigen Wert als Argument und bestimmt dann, ob ein Array diesen Wert enthält.true
Andernfalls wird die Methode zurückgegeben, wenn der Wert gefunden wirdfalse
.Beispiel:
quelle
Sie können verwenden
filter
zuquelle
mag das:
quelle