Skip to content

Commit b464ad1

Browse files
authored
Merge pull request #240 from jonnathan-ls/fix/started-intro
An Introduction to JavaScript
2 parents cbdd312 + e97d7e0 commit b464ad1

File tree

1 file changed

+20
-20
lines changed

1 file changed

+20
-20
lines changed

1-js/01-getting-started/1-intro/article.md

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -13,22 +13,22 @@ Os scripts são fornecidos e executados como texto puro. Eles não precisam de p
1313
Neste aspecto, o JavaScript é muito diferente de outra linguagem chamada [Java](https://pt.wikipedia.org/wiki/Java_(linguagem_de_programação)).
1414

1515
```smart header="Por que é chamado <u>Java</u>Script?"
16-
Quando o JavaScript foi criado, inicialmente 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.
16+
Quando o JavaScript foi criado, 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.
1717
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.
18+
Mas à medida que ele evoluiu, o JavaScript se tornou uma linguagem totalmente independente e com a sua própria especificação chamada [ECMAScript](https://pt.wikipedia.org/wiki/ECMAScript), e agora ele não tem nenhuma relação com Java.
1919
```
2020

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).
21+
Hoje, o JavaScript pode ser executado não só no navegador, como 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).
2222

23-
O navegador tem um interpretador(motor) incorporado, às vezes chamado de "máquina virtual JavaScript".
23+
O navegador tem um interpretador (motor) incorporado que às vezes é chamado de "máquina virtual JavaScript".
2424

2525
Interpretadores diferentes têm "codinomes" diferentes. Por exemplo:
2626

27-
- [V8](https://en.wikipedia.org/wiki/V8_(JavaScript_engine)) -- no Chrome, Opera e Edge.
27+
- [V8](https://pt.wikipedia.org/wiki/V8_(JavaScript)) -- no Chrome, Opera e Edge.
2828
- [SpiderMonkey](https://en.wikipedia.org/wiki/SpiderMonkey) -- no Firefox.
29-
- ...Há outros codinomes como "Chakra" para o IE, "JavaScriptCore", "Nitro" e "SquirrelFish" para Safari, etc.
29+
- ... Há outros codinomes como "Chakra" para o IE, "JavaScriptCore", "Nitro" e "SquirrelFish" para Safari, etc.
3030

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 Chrom, Opera e Edge.
31+
Os termos acima são bons para lembrar, pois são usados em artigos de desenvolvedores na internet. Nós também os vamos usar. Por exemplo, se "um recurso X é suportado pelo V8", então ele provavelmente funciona no Chrome, Opera e Edge.
3232

3333
```smart header="Como funcionam os interpretadores?"
3434
@@ -45,41 +45,41 @@ O interpretador aplica otimizações em cada etapa do processo. Ele ainda observ
4545

4646
JavaScript moderno é uma linguagem de programação "segura". Ele não fornece acesso de baixo nível à memória ou CPU, porque foi inicialmente criado para navegadores que não necessitam dele.
4747

48-
As capacidades do JavaScript dependem muito do ambiente em que está sendo executado. Por exemplo, [Node.js]https://pt.wikipedia.org/wiki/Node.js) suporta funções que permitem ao JavaScript ler/gravar arquivos arbitrários, executar solicitações de rede, etc.
48+
As capacidades do JavaScript dependem muito do ambiente em que está sendo executado. Por exemplo, [Node.js](https://pt.wikipedia.org/wiki/Node.js) suporta funções que permitem ao JavaScript ler/gravar arquivos arbitrários, executar solicitações de rede, etc.
4949

5050
O JavaScript no navegador pode fazer tudo relacionado à manipulação de páginas web, interação com o usuário e o servidor web.
5151

5252
Por exemplo, o JavaScript no navegador é capaz de:
5353

5454
- Adicionar novo HTML à página, alterar o conteúdo existente, modificar estilos.
55-
- Reagir às ações do usuário, executar em cliques de mouse, movimentos de ponteiro, pressionamentos de teclas.
56-
- Enviar solicitações através da rede para servidores remotos, baixar e carregar arquivos (as chamadas tecnologias [AJAX](https://en.wikipedia.org/wiki/Ajax_(programming)) e [COMET](https://en.wikipedia.org/wiki/Comet_(programming))).
55+
- Reagir às ações do usuário, executando código seguindo cliques de mouse, movimentos de ponteiro, pressionamentos de teclas.
56+
- Enviar solicitações através da rede para servidores remotos, baixar e carregar arquivos (as chamadas tecnologias [AJAX] (https://pt.wikipedia.org/wiki/Ajax_(programa%C3%A7%C3%A3o)) e [COMET] (https://pt.wikipedia.org/wiki/Comet_(programa%C3%A7%C3%A3o))).
5757
- Obter e definir cookies, fazer perguntas ao visitante, mostrar mensagens.
58-
- Lembre-se dos dados no lado do cliente ("local storage").
58+
- Lembrar-se dos dados no lado do cliente ("local storage").
5959

6060
## O que o JavaScript no navegador não pode fazer?
6161

62-
As habilidades do JavaScript no navegador são limitadas por uma questão de segurança do usuário. O objetivo é evitar que uma página maléfica acesse informações privadas ou prejudique os dados do usuário.
62+
As habilidades do JavaScript no navegador são limitadas por uma questão de segurança do usuário. O objetivo é evitar que uma página maléfica acesse informações privadas ou danifique os dados do usuário.
6363

6464
Exemplos de tais restrições incluem:
6565

66-
- JavaScript em uma página não pode ler/gravar arquivos arbitrários no disco rígido, copiá-los ou executar programas. Não tem acesso direto às funções do sistema operacional.
66+
- O JavaScript em uma página não pode ler/gravar/copiar arquivos arbitrários ou executar programas, se estes estiverem no disco rígido. Não tem acesso direto às funções do sistema operacional.
6767

68-
Os navegadores modernos permitem que ele trabalhe com arquivos, mas o acesso é limitado e fornecido apenas se o usuário executar determinadas ações, como "dropping" de um arquivo em uma janela do navegador ou selecioná-lo por meio de uma tag `<input>`.
68+
Os navegadores modernos permitem que ele trabalhe com arquivos, mas o acesso é limitado e fornecido apenas se o usuário executar determinadas ações, como "dropping" de um arquivo em uma janela do navegador ou selecioná-lo por meio de uma entrada de formulário.
6969

70-
Existem maneiras de interagir com a câmera / microfone e outros dispositivos, mas eles exigem permissão explícita do usuário. Assim, uma página habilitada para JavaScript pode não habilmente habilitar uma câmera web, observar os arredores e enviar as informações para a [NSA](https://pt.wikipedia.org/wiki/Ag%C3%AAncia_de_Seguran%C3%A7a_Nacional).
70+
Existem maneiras de interagir com a câmera / microfone e outros dispositivos, mas eles exigem permissão explícita do usuário. Assim, uma página habilitada para JavaScript pode não habilmente habilitar uma câmera web, observar os arredores e enviar as informações para a [NSA](https://pt.wikipedia.org/wiki/Ag%C3%AAncia_de_Seguran%C3%A7a_Nacional).
7171

7272
- Diferentes abas/janelas geralmente não se conhecem mutuamente. Às vezes sim, por exemplo, quando uma janela usa JavaScript para abrir a outra. Mas mesmo neste caso, JavaScript de uma página pode não acessar a outra se eles vierem de sites diferentes (de um domínio, protocolo ou porta diferente).
7373

74-
Isso é chamado de "Política de mesma origem ". Para contornar isso, *ambas as páginas* devem conter um código JavaScript especial que lida com a troca de dados.
74+
Isto é chamado de "Política de mesma origem". Para contornar isso, *ambas as páginas* devem concordar em trocar dados e conter código JavaScript específico para o fazer.
7575

7676
Essa limitação é, novamente, para a segurança do usuário. Uma página de `http://umsitequalquer.com.br` que um usuário abriu não deve poder alcançar uma outra aba do navegador com a URL `http://gmail.com` e roubar a informação de lá.
7777

7878
- O JavaScript pode se comunicar facilmente pela rede com o servidor de onde a página atual veio. Mas sua capacidade de receber dados de outros sites / domínios é prejudicada. Embora possível, requer acordo explícito (expresso em cabeçalhos HTTP) do lado remoto. Mais uma vez, isso é uma limitação de segurança.
7979

8080
![](limitations.svg)
8181

82-
Esses limites não existem se o JavaScript for usado fora do navegador, por exemplo, em um servidor. Os navegadores modernos também permitem plugins / extensões que podem solicitar permissões estendidas.
82+
Esses limites não existem se o JavaScript for usado fora do navegador, por exemplo, em um servidor. Os navegadores modernos também permitem plugins/extensões que podem solicitar permissões estendidas.
8383

8484
## O que torna o JavaScript único?
8585

@@ -88,7 +88,7 @@ Há pelo menos *três* grandes aspectos do JavaScript:
8888
```compare
8989
+ Integração total com HTML/CSS.
9090
+ Coisas simples são feitas de forma simples.
91-
+ Suporte para todos os principais navegadores e ativado por padrão.
91+
+ Suporte em todos os principais navegadores, e ativado por padrão.
9292
```
9393

9494
JavaScript é a única tecnologia de navegador que combina estas três qualidades.
@@ -101,11 +101,11 @@ Dito isso, o JavaScript pode ser usado para criar servidores, aplicativos móvei
101101

102102
A sintaxe do JavaScript não se adapta às necessidades de todos. Pessoas diferentes querem características diferentes.
103103

104-
Isso é de se esperar, porque os projetos e requisitos são diferentes para todos.
104+
Isso é de se esperar, porque projetos e requisitos são diferentes para todos.
105105

106106
Então, recentemente uma infinidade de novas linguagens apareceu, que são *transpiladas* (convertidas) para JavaScript antes de rodarem no navegador.
107107

108-
Ferramentas modernas tornam a transpilação muito rápida e transparente, permitindo que os desenvolvedores codifiquem em outra linguagem e auto-convertendo-a "sob o capô".
108+
Ferramentas modernas tornam a transpilação muito rápida e transparente, permitindo que os desenvolvedores codifiquem em outra linguagem e auto-convertendo "nos bastidores".
109109

110110
Exemplos de tais linguagens:
111111

0 commit comments

Comments
 (0)