Apesar dessa diferença fundamental do JavaScript, o TypeScript ainda pode ser executado em qualquer lugar que o JavaScript possa ser executado. Isso ocorre porque o TypeScript não compila em um executável binário, mas em JavaScript padrão.
TypeScript versus JavaScript
TypeScript é um superconjunto de JavaScript. Embora qualquer código JavaScript correto também seja um código TypeScript correto, o TypeScript também possui recursos de linguagem que não fazem parte do JavaScript. O recurso mais proeminente exclusivo do TypeScript – aquele que deu seu nome ao TypeScript – é, como observado, tipagem forte: uma variável TypeScript está associada a um tipocomo uma string, um número ou um booleano, que informa ao compilador que tipo de dados ele pode conter. Além disso, TypeScript suporta inferência de tipoe inclui um resumo any
type, o que significa que as variáveis não precisam ter seus tipos atribuídos explicitamente pelo programador.
TypeScript também foi projetado para programação orientada a objetos, enquanto JavaScript não. Conceitos como herança e controle de acesso que não são intuitivos em JavaScript são fáceis de implementar em TypeScript. Além disso, o TypeScript permite implementar interfaces, um conceito amplamente sem sentido no mundo JavaScript.