Как получить тип переменной в TypScript? У меня переменная. abc:number|string; Как я могу проверить его тип? Я хочу сделать что-то вроде ниже: if (abc.type === "number") { // do something } Ответ 1 Для: abc:number|string; Используйте оператор JavaScript typeof: if (typeof abc === "number") { // do something } ТипScript понимает typeof 🌹 Это называется типом. Больше Для классов вы должны использовать instanceof например class Foo {} class Bar {} // Later if (fooOrBar instanceof Foo){ // TypeScript now knows that 'fooOrBar' is 'Foo' } Существуют и другие типы охранников, например, in т.д. Https://basarat.gitbooks.io/typescript/content/docs/types/typeGuard.html Ответ 2 Я хотел бы добавить, что TypeGuards работает только с строками или цифрами, если вы хотите сравнить объект use instanceof if(task.id instanceof UUID) { //foo }
Ответ 1 Для: abc:number|string; Используйте оператор JavaScript typeof: if (typeof abc === "number") { // do something } ТипScript понимает typeof 🌹 Это называется типом. Больше Для классов вы должны использовать instanceof например class Foo {} class Bar {} // Later if (fooOrBar instanceof Foo){ // TypeScript now knows that 'fooOrBar' is 'Foo' } Существуют и другие типы охранников, например, in т.д. Https://basarat.gitbooks.io/typescript/content/docs/types/typeGuard.html
Ответ 2 Я хотел бы добавить, что TypeGuards работает только с строками или цифрами, если вы хотите сравнить объект use instanceof if(task.id instanceof UUID) { //foo }