Этот метод использует Object.keys()
для проверки допустимости типа:
/**
* Checks if validation type is valid.
*/
static isValid(type: string) {
return type !== "isValid" &&
type !== "getMessage" &&
Object.keys(this).map(key => (this as any)[key]).indexOf(type) !== -1;
}
Интересно, есть ли что-то в Javascript / Typescript, которое автоматически исключает свойства, являющиеся функциями,таким образом, что мы можем исключить type !== "isValid" &&...
части функции.
Если вы знаете другие простые способы сделать это, было бы замечательно увидеть также.