You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/01-hello-world/article.md
+3-14Lines changed: 3 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# Olá, mundo!
2
2
3
-
O tutorial que você está lendo é sobre a core do JavaScript, que é independente de plataforma. Mais tarde, você vai aprender sobre Node.js e outras plataformas que o usam.
3
+
Esta parte do tutorial é sobre a core do JavaScript, a própria linguagem.
4
4
5
5
Mas precisamos de um ambiente de trabalho para rodar nossos scripts e, como esse livro está online, o navegador é uma boa escolha. Vamos manter a quantidade de comandos específicos do navegador (como `alert`) no mínimo para que você não gaste tempo com eles se você planeja se concentrar em outro ambiente (como Node.js). Vamos focar em JavaScript no navegador na [próxima parte](/ui) do tutorial.
6
6
@@ -45,16 +45,11 @@ A tag `<script>` contém código JavaScript que é executado automaticamente qua
45
45
46
46
A tag `<script>` tem alguns atributos que raramente são usados hoje em dia, mas que ainda podem ser encontrados em códigos antigos:
47
47
48
-
<<<<<<< HEAD
49
48
O atributo `type`: <code><script <u>type</u>=...></code>
50
49
: O antigo padrão HTML, HTML4, requeria um script para ter um `type`. Normalmente era `type="text/javascript"`. Não é mais necessário. Além disso, o moderno padrão HTML, HTML5, mudou totalmente o significado deste atributo. Agora, ele pode ser usado para módulos JavaScript. Mas esse é um tópico avançado; vamos falar sobre módulos em outra parte do tutorial.
51
-
=======
52
-
The `type` attribute: <code><script <u>type</u>=...></code>
53
-
: The old HTML standard, HTML4, required a script to have a `type`. Usually it was `type="text/javascript"`. It's not required anymore. Also, the modern HTML standard totally changed the meaning of this attribute. Now, it can be used for JavaScript modules. But that's an advanced topic, we'll talk about modules in another part of the tutorial.
54
-
>>>>>>> e074a5f825a3d10b0c1e5e82561162f75516d7e3
55
50
56
51
O atributo `language`: <code><script <u>language</u>=...></code>
57
-
: Este atributo foi criado para mostrar o idioma do script. Este atributo não faz mais sentido porque JavaScript é a linguagem padrão. Não há necessidade de usá-lo.
52
+
: Este atributo foi criado para mostrar o idioma do script. Este atributo não faz mais sentido porque JavaScript é a linguagem padrão. Não há necessidade de o usar.
58
53
59
54
Comentários antes e depois dos scripts.
60
55
: Em livros e guias realmente antigos, você pode encontrar comentários dentro de tags `<script>`, assim:
@@ -65,11 +60,7 @@ Comentários antes e depois dos scripts.
65
60
//--></script>
66
61
```
67
62
68
-
<<<<<<< HEAD
69
63
Esse truque não é usado no JavaScript moderno. Esses comentários esconderam código JavaScript de navegadores antigos que não sabiam como processar a tag `<script>`. Como os navegadores lançados nos últimos 15 anos não têm esse problema, esse tipo de comentário pode ajudá-lo a identificar códigos realmente antigos.
70
-
=======
71
-
This trick isn't used in modern JavaScript. These comments hide JavaScript code from old browsers that didn't know how to process the `<script>` tag. Since browsers released in the last 15 years don't have this issue, this kind of comment can help you identify really old code.
72
-
>>>>>>> e074a5f825a3d10b0c1e5e82561162f75516d7e3
73
64
74
65
75
66
## Scripts externos
@@ -82,9 +73,7 @@ Os arquivos de script são anexados ao HTML com o atributo `src`:
82
73
<scriptsrc="/path/to/script.js"></script>
83
74
```
84
75
85
-
Aqui, `/path/to/script.js` é um caminho absoluto para o arquivo script (da raiz do site).
86
-
87
-
Você também pode fornecer um caminho relativo a partir da página atual. Por exemplo, `src="script.js"` significaria um arquivo `"script.js"` na pasta atual.
76
+
Aqui, `/path/to/script.js` é um caminho absoluto para o arquivo script (da raiz do site). Você também pode fornecer um caminho relativo a partir da página atual. Por exemplo, `src="script.js"` significaria um arquivo `"script.js"` na pasta atual.
88
77
89
78
Nós também podemos dar uma URL completa. Por exemplo:
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/02-structure/article.md
+5-12Lines changed: 5 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -36,9 +36,10 @@ alert('Mundo')
36
36
37
37
Aqui, o JavaScript interpreta a quebra de linha como um ponto-e-vírgula "implícito". Isso é chamado de [inserção automática de ponto-e-vírgula](https://tc39.github.io/ecma262/#sec-automatic-semicolon-insertion).
38
38
39
-
**Na maioria dos casos, uma nova linha implica um ponto e vírgula. Mas "na maioria dos casos" não significa "sempre"!
39
+
**Na maioria dos casos, uma nova linha implica um ponto e vírgula. Mas "na maioria dos casos" não significa "sempre"!**
40
40
41
41
Há casos em que uma nova linha não significa ponto e vírgula. Por exemplo:
42
+
42
43
```js run no-beautify
43
44
alert(3+
44
45
1
@@ -93,11 +94,7 @@ Mas devem ser duas declarações separadas, não uma. Tal fusão neste caso é c
93
94
94
95
Recomendamos colocar ponto e vírgula entre as frases, mesmo que estejam separadas por novas linhas. Esta regra é amplamente adotada pela comunidade. Vamos notar mais uma vez -- *é possível* deixar de fora os pontos e vírgulas na maior parte do tempo. Mas é mais seguro -- especialmente para um iniciante -- usá-los.
95
96
96
-
<<<<<<< HEAD
97
-
## Comentários
98
-
=======
99
-
## Comments [#code-comments]
100
-
>>>>>>> e074a5f825a3d10b0c1e5e82561162f75516d7e3
97
+
## Comentários [#code-comments]
101
98
102
99
Com o passar do tempo, os programas tornam-se cada vez mais complexos. Torna-se necessário adicionar *comentários* que descrevem o que o código faz e porquê.
103
100
@@ -139,15 +136,11 @@ alert('Mundo');
139
136
```
140
137
141
138
```smart header="Use hotkeys!"
142
-
<<<<<<< HEAD
143
-
Na maioria dos editores, uma linha de código pode ser comentada pressionando a tecla de atalho `key:Ctrl+/` para um comentário de linha única e algo como `key:Ctrl+Shift+/` -- para comentários multilinha (selecione um pedaço de código e pressione a tecla de atalho). Para Mac, tente `key:Cmd` em vez de `key:Ctrl`.
144
-
=======
145
-
In most editors, a line of code can be commented out by pressing the `key:Ctrl+/` hotkey for a single-line comment and something like `key:Ctrl+Shift+/` -- for multiline comments (select a piece of code and press the hotkey). For Mac, try `key:Cmd` instead of `key:Ctrl` and `key:Option` instead of `key:Shift`.
146
-
>>>>>>> e074a5f825a3d10b0c1e5e82561162f75516d7e3
139
+
Na maioria dos editores, uma linha de código pode ser comentada pressionando a tecla de atalho `key:Ctrl+/` para um comentário de linha única e algo como `key:Ctrl+Shift+/` -- para comentários multilinha (selecione um pedaço de código e pressione a tecla de atalho). Para Mac, tente `key:Cmd` em vez de `key:Ctrl` e `key:Option` em vez de `key:Shift`.
147
140
```
148
141
149
142
````warn header="Comentários aninhados não são suportados!"
150
-
Pode não haver `/*...*/` dentro de outro `/*...*/`.
143
+
Não pode haver `/*...*/` dentro de outro `/*...*/`.
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/03-strict-mode/article.md
+27-58Lines changed: 27 additions & 58 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,14 +19,10 @@ For example:
19
19
...
20
20
```
21
21
22
-
<<<<<<< HEAD
23
-
Nós vamos aprender sobre funções, uma forma de agupar comandos, em breve.
22
+
Muito em breve, nós vamos aprender sobre funções (uma forma de agrupar comandos), assim vamos pré-anotar que `"use strict"` pode ser colocado no início de uma função. Fazer isso habilita o modo estrito apenas nessa função. Mas geralmente, as pessoas usam no script inteiro.
24
23
25
-
=======
26
-
Quite soon we're going to learn functions (a way to group commands), so let's note in advance that `"use strict"` can be put at the beginning of a function. Doing that enables strict mode in that function only. But usually people use it for the whole script.
27
-
>>>>>>> e074a5f825a3d10b0c1e5e82561162f75516d7e3
28
-
29
-
Vamos apenas observar que "use strict" pode ser colocado no início da maioria dos tipos de funções em vez do script inteiro. Fazer isso habilita o modo estrito apenas nessa função. Mas geralmente, as pessoas usam no script inteiro.
24
+
````warn header="Se assegure que \"use strict\" está no topo"
25
+
Por favor, se assegure que `"use strict"` está no topo dos seus scripts, de contrário o modo estrito pode não estar ativado.
30
26
31
27
O modo estrito não está ativado aqui:
32
28
@@ -39,82 +35,55 @@ alert("algum código");
39
35
// modo estrito não está ativado
40
36
```
41
37
42
-
Apenas comentários devem aparecer acima de `"use strict"`.
43
-
44
-
## Console do navegador
38
+
Apenas comentários podem aparecer acima de `"use strict"`.
39
+
````
45
40
46
-
<<<<<<< HEAD
47
-
Para o futuro, quando você usar o console do navegador para testar funcionalidades, observe que ele não "usa strict" por padrão.
41
+
```warn header="Não há forma de cancelar `use strict`"
42
+
Não existe uma diretiva como `"no use strict"`para reverter o interpretador (*engine*) para o comportamento antigo.
48
43
49
-
As vezes, quando usar `use strict` faz alguma diferença, você terá resultados incorretos.
50
-
=======
51
-
Once we enter strict mode, there's no going back.
44
+
Assim que entramos para o modo estrito, não podemos voltar atrás.
52
45
```
53
46
54
-
## Browser console
47
+
## Console do navegador
55
48
56
-
When you use a [developer console](info:devtools) to run code, please note that it doesn't `use strict` by default.
49
+
Quando você usar o [console do navegador](info:devtools) para testar funcionalidades, por favor observe que ele não "usa strict" por padrão.
57
50
58
-
Sometimes, when `use strict` makes a difference, you'll get incorrect results.
51
+
As vezes, quando usar `use strict` fizer alguma diferença, você terá resultados incorretos.
59
52
60
-
So, how to actually `use strict` in the console?
53
+
Assim, como ativar `use strict` no console?
61
54
62
-
First, you can try to press `key:Shift+Enter` to input multiple lines, and put `use strict` on top, like this:
55
+
Primeiro, podemos tentar pressionar `key:Shift + Enter` para inserir várias linhas, e colocar` use strict` no topo, assim:
63
56
64
57
```js
65
-
'use strict'; <Shift+Enter for a newline>
66
-
// ...your code
67
-
<Enter to run>
58
+
'use strict'; <Shift+Enter para uma nova linha>
59
+
// ...seu código
60
+
<Enter para executar>
68
61
```
69
-
>>>>>>> e074a5f825a3d10b0c1e5e82561162f75516d7e3
70
62
71
-
Mesmo se pressionarmos `key: Shift + Enter` para inserir várias linhas e colocar` use strict` no topo, isso não funcionará. Isso é por causa de como o console executa o código internamente.
63
+
Funciona em vários navegadores, nomeadamente Firefox and Chrome.
72
64
73
-
<<<<<<< HEAD
74
-
A maneira confiável de garantir `use strict` seria inserir o código no console da seguinte forma:
75
-
=======
76
-
If it doesn't, e.g. in an old browser, there's an ugly, but reliable way to ensure `use strict`. Put it inside this kind of wrapper:
77
-
>>>>>>> e074a5f825a3d10b0c1e5e82561162f75516d7e3
65
+
Se não funcionar, ex. num navegador antigo, existe uma maneira feia, mas confiável, de garantir `use strict`. Coloque ele dentro deste tipo de contentor (*wrapper*):
78
66
79
67
```js
80
68
(function() {
81
69
'use strict';
82
70
83
-
<<<<<<<HEAD
84
-
// ...seu código...
85
-
})()
86
-
```
87
-
88
-
## Sempre "use strict"
89
-
90
-
Ainda precisamos cobrir as diferenças entre o modo estrito e o modo "padrão".
91
-
92
-
Nos próximos capítulos, assim como nós vamos aprender novas funcinalidades, vamos aprender as diferenças entre o modo estrito e os modos padrões. Felizmente, não há muitos e eles realmente tornam nossas vidas melhores.
93
-
94
-
Por agora, de um momento geral, basta saber sobre isso:
95
-
96
-
1. A diretiva `" use strict "` alterna o mecanismo para o modo "moderno", alterando o comportamento de alguns recursos internos. Vamos ver os detalhes mais tarde no tutorial.
97
-
2. O modo estrito é ativado colocando `" use strict "` no topo de um script ou função. Vários recursos de idioma, como "classes" e "módulos", ativam o modo estrito automaticamente.
98
-
3. Modo estrito é suportado por todos os navegadores modernos.
99
-
4. Recomendamos sempre iniciar scripts com `" use strict "`. Todos os exemplos neste tutorial assumem o modo estrito, a menos que (muito raramente) seja especificado de outra forma.
100
-
=======
101
-
// ...your code here...
71
+
// ...seu código aqui...
102
72
})()
103
73
```
104
74
105
-
## Should we "use strict"?
75
+
## Devemos usar "use strict"?
106
76
107
-
The question may sound obvious, but it's not so.
77
+
A questão pode parecer óbvia, mas não é tanto.
108
78
109
-
One could recommend to start scripts with `"use strict"`... But you know what's cool?
79
+
Pode-se recomendar iniciar scripts com`"use strict"`... Mas sabe o que é legal?
110
80
111
-
Modern JavaScript supports "classes" and "modules" - advanced language structures (we'll surely get to them), that enable `use strict` automatically. So we don't need to add the `"use strict"` directive, if we use them.
81
+
O JavaScript moderno suporta "classes" e "módulos" - estruturas avançadas da linguagem (vamos seguramente chegar até elas), que ativam`use strict`automaticamente. Assim, não precisamos de adicionar a diretiva`"use strict "`, quando as usamos.
112
82
113
-
**So, for now `"use strict";` is a welcome guest at the top of your scripts. Later, when your code is all in classes and modules, you may omit it.**
83
+
**Assim, por agora`"use strict "` é um convidado bem-vindo no topo dos seus scripts. Mais adiante, quando todo o seu código estiver em classes e módulos, você pode omitir**
114
84
115
-
As of now, we've got to know about `use strict` in general.
85
+
Por agora, nós temos de saber sobre`use strict`de um modo geral.
116
86
117
-
In the next chapters, as we learn language features, we'll see the differences between the strict and old modes. Luckily, there aren't many and they actually make our lives better.
87
+
Nos próximos capítulos, à medida que aprendermos novas funcionalidades, vamos ver as diferenças entre o modo estrito e os modos padrões. Felizmente, não há muitos e eles realmente tornam nossas vidas melhores.
118
88
119
-
All examples in this tutorial assume strict mode unless (very rarely) specified otherwise.
120
-
>>>>>>> e074a5f825a3d10b0c1e5e82561162f75516d7e3
89
+
Todos os exemplos neste tutorial assumem o modo estrito, a menos que (muito raramente) seja especificado de outra forma.
0 commit comments