Skip to content

Commit 0431910

Browse files
committed
Update part of "1-js/02-first-steps" after #178.
1 parent 737ba08 commit 0431910

File tree

4 files changed

+36
-85
lines changed

4 files changed

+36
-85
lines changed

1-js/02-first-steps/01-hello-world/1-hello-alert/task.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
importância: 5
1+
importance: 5
22

33
---
44

1-js/02-first-steps/01-hello-world/article.md

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Olá, mundo!
22

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.
44

55
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.
66

@@ -45,16 +45,11 @@ A tag `<script>` contém código JavaScript que é executado automaticamente qua
4545

4646
A tag `<script>` tem alguns atributos que raramente são usados hoje em dia, mas que ainda podem ser encontrados em códigos antigos:
4747

48-
<<<<<<< HEAD
4948
O atributo `type`: <code>&lt;script <u>type</u>=...&gt;</code>
5049
: 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>&lt;script <u>type</u>=...&gt;</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
5550

5651
O atributo `language`: <code>&lt;script <u>language</u>=...&gt;</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.
5853

5954
Comentários antes e depois dos scripts.
6055
: 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.
6560
//--></script>
6661
```
6762

68-
<<<<<<< HEAD
6963
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
7364

7465

7566
## Scripts externos
@@ -82,9 +73,7 @@ Os arquivos de script são anexados ao HTML com o atributo `src`:
8273
<script src="/path/to/script.js"></script>
8374
```
8475

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.
8877

8978
Nós também podemos dar uma URL completa. Por exemplo:
9079

1-js/02-first-steps/02-structure/article.md

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,10 @@ alert('Mundo')
3636

3737
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).
3838

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"!**
4040

4141
Há casos em que uma nova linha não significa ponto e vírgula. Por exemplo:
42+
4243
```js run no-beautify
4344
alert(3 +
4445
1
@@ -93,11 +94,7 @@ Mas devem ser duas declarações separadas, não uma. Tal fusão neste caso é c
9394

9495
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.
9596

96-
<<<<<<< HEAD
97-
## Comentários
98-
=======
99-
## Comments [#code-comments]
100-
>>>>>>> e074a5f825a3d10b0c1e5e82561162f75516d7e3
97+
## Comentários [#code-comments]
10198

10299
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ê.
103100

@@ -139,15 +136,11 @@ alert('Mundo');
139136
```
140137

141138
```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`.
147140
```
148141

149142
````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 `/*...*/`.
151144
152145
Tal código morrerá com um erro:
153146

1-js/02-first-steps/03-strict-mode/article.md

Lines changed: 27 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,10 @@ For example:
1919
...
2020
```
2121

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.
2423

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.
3026
3127
O modo estrito não está ativado aqui:
3228
@@ -39,82 +35,55 @@ alert("algum código");
3935
// modo estrito não está ativado
4036
```
4137
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+
````
4540

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.
4843

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.
5245
```
5346
54-
## Browser console
47+
## Console do navegador
5548
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.
5750
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.
5952
60-
So, how to actually `use strict` in the console?
53+
Assim, como ativar `use strict` no console?
6154
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:
6356
6457
```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>
6861
```
69-
>>>>>>> e074a5f825a3d10b0c1e5e82561162f75516d7e3
7062

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.
7264

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*):
7866

7967
```js
8068
(function() {
8169
'use strict';
8270

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...
10272
})()
10373
```
10474

105-
## Should we "use strict"?
75+
## Devemos usar "use strict"?
10676

107-
The question may sound obvious, but it's not so.
77+
A questão pode parecer óbvia, mas não é tanto.
10878

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?
11080

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.
11282

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**
11484

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.
11686

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.
11888

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

Comments
 (0)