

Jakého typu je proměnná (v Typescript)
Ahoj,
mám dotaz.
Uvažujme následující funkční kód:
function ProductModel() {
var self = this;
self.products = ko.observableArray([]);
self.currentFilter = ko.observable(); // property to store the filter
//...
self.filterProducts = ko.computed(function() {
if(!self.currentFilter()) {
return self.products();
} else {
return ko.utils.arrayFilter(self.products(), function(prod) {
return prod.genre == self.currentFilter();
});
}
});
}
Dále se zamysleme na přepisu do Typescriptu.konkrétně mi jde o tento řádek:
return ko.utils.arrayFilter(self.products(), function(prod) {
return prod.genre == self.currentFilter();
});
Zvýrazněná proměnná prod - jakého je typu a jak ji natypovat?
Dá se zbaběle použít any.
Tedy něco, jako:
return ko.utils.arrayFilter(self.products(), function(prod: any) {
return prod.genre == self.currentFilter();
});
A kód bude fungovat (asi s menším dopadem na výkon?).
Ale co kdybych chtěl uvést ihned konkrétní typ. Např. "String" či přesněji ko.observableArray?
(objekt ko ani není v tomto scopu znám).