|
1 |
| -# An Introduction to JavaScript |
| 1 | +# Uma Introdução ao JavaScript |
2 | 2 |
|
3 |
| -Let's see what's so special about JavaScript, what we can achieve with it, and which other technologies play well with it. |
| 3 | +Vamos ver o que há de tão especial no JavaScript, o que podemos fazer com ele, e que outras tecnologias funcionam bem com ele. |
4 | 4 |
|
5 |
| -## What is JavaScript? |
| 5 | +## O que é JavaScript? |
6 | 6 |
|
7 |
| -*JavaScript* was initially created to *"make web pages alive"*. |
| 7 | +*JavaScript* foi inicialmente criado para *" tornar páginas web vivas "*. |
8 | 8 |
|
9 |
| -The programs in this language are called *scripts*. They can be written right in a web page's HTML and executed automatically as the page loads. |
| 9 | +Os programas nesta linguagem são chamados de *scripts*. Eles podem ser escritos diretamente no HTML de uma página web e executados automaticamente quando a página é carregada. |
10 | 10 |
|
11 |
| -Scripts are provided and executed as plain text. They don't need special preparation or compilation to run. |
| 11 | +Os scripts são fornecidos e executados como texto puro. Eles não precisam de preparação ou compilação especial para serem executados. |
12 | 12 |
|
13 |
| -In this aspect, JavaScript is very different from another language called [Java](https://en.wikipedia.org/wiki/Java_(programming_language)). |
| 13 | +Neste aspecto, o JavaScript é muito diferente de outra linguagem chamada [Java](https://pt.wikipedia.org/wiki/Java_(linguagem_de_programação)). |
14 | 14 |
|
15 |
| -```smart header="Why <u>Java</u>Script?" |
16 |
| -When JavaScript was created, it initially had another name: "LiveScript". But Java was very popular at that time, so it was decided that positioning a new language as a "younger brother" of Java would help. |
| 15 | +```smart header="Por que <u>Java</u>Script?" |
| 16 | +Quando foi criado, inicialmente o JavaScript tinha outro nome: "LiveScript". Mas Java era muito popular naquela época, então foi decidido que posicionar uma nova linguagem como um "irmão mais novo" de Java ajudaria. |
17 | 17 |
|
18 |
| -But as it evolved, JavaScript became a fully independent language with its own specification called [ECMAScript](http://en.wikipedia.org/wiki/ECMAScript), and now it has no relation to Java at all. |
| 18 | +Mas à medida que ele evoluiu, o JavaScript se tornou uma linguagem totalmente independente com sua própria especificação chamada [ECMAScript] (http://en.wikipedia.org/wiki/ECMAScript), e agora ele não tem nenhuma relação com Java. |
19 | 19 | ```
|
20 | 20 |
|
21 |
| -Today, JavaScript can execute not only in the browser, but also on the server, or actually on any device that has a special program called [the JavaScript engine](https://en.wikipedia.org/wiki/JavaScript_engine). |
| 21 | +Hoje, o JavaScript pode ser executado não só no navegador, mas também no servidor, ou mesmo em qualquer dispositivo que tenha um programa especial chamado [Interpretador JavaScript] (https://pt.wikipedia.org/wiki/Interpretador_de_JavaScript). |
22 | 22 |
|
23 |
| -The browser has an embedded engine sometimes called a "JavaScript virtual machine". |
| 23 | +O navegador tem um interpretador(motor) incorporado, às vezes chamado de "máquina virtual JavaScript". |
24 | 24 |
|
25 |
| -Different engines have different "codenames". For example: |
| 25 | +Interpretadores diferentes têm "codinomes" diferentes. Por exemplo: |
26 | 26 |
|
27 |
| -- [V8](https://en.wikipedia.org/wiki/V8_(JavaScript_engine)) -- in Chrome and Opera. |
28 |
| -- [SpiderMonkey](https://en.wikipedia.org/wiki/SpiderMonkey) -- in Firefox. |
29 |
| -- ...There are other codenames like "Trident" and "Chakra" for different versions of IE, "ChakraCore" for Microsoft Edge, "Nitro" and "SquirrelFish" for Safari, etc. |
| 27 | +- [V8](https://en.wikipedia.org/wiki/V8_(JavaScript_engine)) -- no Chrome e no Opera. |
| 28 | +- [SpiderMonkey](https://en.wikipedia.org/wiki/SpiderMonkey) -- no Firefox. |
| 29 | +- ...Há outros codinomes como "Trident" e "Chakra" para diferentes versões do IE, "ChakraCore" para Microsoft Edge, "Nitro" e "SquirrelFish" para Safari, etc. |
30 | 30 |
|
31 |
| -The terms above are good to remember because they are used in developer articles on the internet. We'll use them too. For instance, if "a feature X is supported by V8", then it probably works in Chrome and Opera. |
| 31 | +Os termos acima são bons para lembrar, pois são usados em artigos de desenvolvedores na internet. Vamos usá-los também. Por exemplo, se "um recurso X é suportado pelo V8", então ele provavelmente funciona no Chrome e no Opera. |
32 | 32 |
|
33 |
| -```smart header="How do engines work?" |
| 33 | +```smart header="Como funcionam os interpretadores?" |
34 | 34 |
|
35 |
| -Engines are complicated. But the basics are easy. |
| 35 | +Os interpretadores são complicados. Mas o básico é fácil. |
36 | 36 |
|
37 |
| -1. The engine (embedded if it's a browser) reads ("parses") the script. |
38 |
| -2. Then it converts ("compiles") the script to the machine language. |
39 |
| -3. And then the machine code runs, pretty fast. |
| 37 | +1. O interpretador (embutido se for um navegador) lê ("analisa") o script. |
| 38 | +2. Depois converte ("compila") o script para a linguagem da máquina. |
| 39 | +3. E então o código da máquina é executado, bem rápido. |
40 | 40 |
|
41 |
| -The engine applies optimizations at each step of the process. It even watches the compiled script as it runs, analyzes the data that flows through it, and applies optimizations to the machine code based on that knowledge. When it's done, scripts run quite fast. |
| 41 | +O interpretador aplica otimizações em cada etapa do processo. Ele ainda observa o script compilado enquanto ele roda, analisa os dados que passam por ele e aplica otimizações ao código da máquina com base nesse conhecimento. Quando isso é feito, os scripts são executados rapidamente. |
42 | 42 | ```
|
43 | 43 |
|
44 | 44 | ## What can in-browser JavaScript do?
|
|
0 commit comments