|  | 
| 1 |  | -# Your JavaScript is TypeScript | 
|  | 1 | +# Seu JavaScript é o TypeScript | 
| 2 | 2 | 
 | 
| 3 |  | -There were (and will continue to be) a lot of competitors in *Some syntax* to *JavaScript* compilers. TypeScript is different from them in that *Your JavaScript is TypeScript*. Here's a diagram: | 
|  | 3 | +Havia (e continuará a ter) muitos competidores em *alguns compiladores de sintaxe* para o *JavaScript*. TypeScript é diferente deles isso por que o *Seu JavaScript é o TypeScript*. Aqui está um diagrama: | 
| 4 | 4 | 
 | 
| 5 |  | - | 
|  | 5 | + | 
| 6 | 6 | 
 | 
| 7 |  | -However, it does mean that *you need to learn JavaScript* (the good news is *you **only** need to learn JavaScript*). TypeScript is just standardizing all the ways you provide *good documentation* on JavaScript. | 
|  | 7 | +No entanto, isso significa que *você só precisa conhecer JavaScript* (a boa notícia é *você **apenas** precisa aprender JavaScript*). O TypeScript está apenas padronizando todas as maneiras que você fornece *uma boa documentação* em JavaScript. | 
| 8 | 8 | 
 | 
| 9 |  | -* Just giving you a new syntax doesn't help fix bugs (looking at you CoffeeScript). | 
| 10 |  | -* Creating a new language abstracts you too far from your runtimes, communities (looking at you Dart). | 
| 11 | 9 | 
 | 
| 12 |  | -TypeScript is just JavaScript with docs. | 
|  | 10 | +* Apenas dando-lhe uma nova sintaxe não ajuda a corrigir bugs (olhando para você CoffeeScript). | 
|  | 11 | +* Criando uma nova linguagem abstrai você muito longe de seus tempos de execução, comunidades (olhando para você Dart). | 
| 13 | 12 | 
 | 
| 14 |  | -## Making JavaScript Better | 
|  | 13 | +O TypeScript é apenas um JavaScript documentado. | 
| 15 | 14 | 
 | 
| 16 |  | -TypeScript will try to protect you from portions of JavaScript that never worked (so you don't need to remember this stuff): | 
|  | 15 | +## Tornando o JavaScript melhor | 
|  | 16 | + | 
|  | 17 | +O TypeScript tentará protegê-lo de partes do JavaScript que nunca funcionaram (então você não precisa se lembrar disso): | 
| 17 | 18 | 
 | 
| 18 | 19 | ```ts | 
| 19 |  | -[] + []; // JavaScript will give you "" (which makes little sense), TypeScript will error | 
|  | 20 | +[] + []; // JavaScript vai te dar "" (o que faz pouco sentido), TypeScript vai reportar um erro | 
| 20 | 21 | 
 | 
| 21 | 22 | // | 
| 22 |  | -// other things that are nonsensical in JavaScript | 
| 23 |  | -// - don't give a runtime error (making debugging hard) | 
| 24 |  | -// - but TypeScript will give a compile time error (making debugging unnecessary) | 
|  | 23 | +// outras coisas que são sem sentido no JavaScript | 
|  | 24 | +// - não lhe dão um erro de execução (dificultando a depuração) | 
|  | 25 | +// - mas o TypeScript lhe dará um erro em tempo de compilação (tornando a depuração desnecessária) | 
| 25 | 26 | // | 
| 26 |  | -{} + []; // JS : 0, TS Error | 
| 27 |  | -[] + {}; // JS : "[object Object]", TS Error | 
| 28 |  | -{} + {}; // JS : NaN or [object Object][object Object] depending upon browser, TS Error | 
| 29 |  | -"hello" - 1; // JS : NaN, TS Error | 
|  | 27 | +{} + []; // JS : 0, TS Erro | 
|  | 28 | +[] + {}; // JS : "[object Object]", TS Erro | 
|  | 29 | +{} + {}; // JS : NaN ou [object Object][object Object] dependendo do navegador, TS Erro | 
|  | 30 | +"hello" - 1; // JS : NaN, TS Erro | 
| 30 | 31 | 
 | 
| 31 | 32 | function add(a,b) { | 
| 32 | 33 |  return | 
| 33 |  | - a + b; // JS : undefined, TS Error 'unreachable code detected' | 
|  | 34 | + a + b; // JS : undefined, TS Erro 'código inacessível detectado' | 
| 34 | 35 | } | 
| 35 | 36 | ``` | 
| 36 | 37 | 
 | 
| 37 |  | -Essentially TypeScript is linting JavaScript. Just doing a better job at it than other linters that don't have *type information*. | 
|  | 38 | +Essencialmente TypeScript faz lint dos erros do JavaScript. Apenas fazendo um trabalho melhor do que outros linters que não possuem *tipo de informações*. | 
| 38 | 39 | 
 | 
| 39 |  | -## You still need to learn JavaScript | 
|  | 40 | +## Você ainda precisa aprender JavaScript | 
| 40 | 41 | 
 | 
| 41 |  | -That said TypeScript is very pragmatic about the fact that *you do write JavaScript* so there are some things about JavaScript that you still need to know in order to not be caught off-guard. Let's discuss them next. | 
|  | 42 | +Dito isso, o TypeScript é muito pragmático sobre o fato de que *você escreve JavaScript*, portanto, há algumas coisas sobre JavaScript que você ainda precisa saber para não ser pego de surpresa. Vamos discuti-los em seguida. | 
| 42 | 43 | 
 | 
| 43 |  | -> Note: TypeScript is a superset of JavaScript. Just with documentation that can actually be used by compilers / IDEs ;) | 
|  | 44 | +> Nota: O TypeScript é um superconjunto do JavaScript. Apenas com documentação que pode realmente ser usada por compiladores / IDEs ;) | 
0 commit comments