Jak opisano tutaj, TypeScript wprowadza pętlę foreach:
var someArray = [9, 2, 5];
for (var item of someArray) {
console.log(item); // 9,2,5
}
Ale czy nie ma żadnego indeksu / klucza? Spodziewałbym się czegoś takiego:
for (var item, key of someArray) { ... }
for-loop
foreach
typescript
Mick
źródło
źródło
Array.some()
i zwrócić false w iteracji, którą chcesz zatrzymać. Nie jest tak wyraźny ani ładny jak a,break
ale wystarczyłby do wykonania zadania. Osobiście mi się to nie podoba, prawdopodobnie przepisałbym iterację w inny sposób :) patrz stackoverflow.com/questions/2641347/ ...https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/entries
W TS wymaga to ukierunkowania na ES2015, ponieważ wymaga środowiska wykonawczego do obsługi iteratorów , czego nie mają środowiska wykonawcze ES5. Możesz oczywiście użyć czegoś takiego jak Babel, aby wyjście działało w środowiskach wykonawczych ES5.
źródło
„Old school javascript” na ratunek (dla tych, którzy nie znają / nie kochają programowania funkcjonalnego)
źródło
Aby uzyskać dostęp do indeksu podczas pracy z kolekcjami, można użyć operatora for..in TypeScript.
Wynik:
Zobacz Demo
źródło
for..in
może również dać ci więcej, niż się spodziewałeś, ponieważ zawiera również wszystkie funkcje zadeklarowane w obiekcie. Na przykład:for (var prop in window.document) { console.log(prop); }
Lub inne oldschoolowe rozwiązanie:
źródło