Skip to content

Commit 4ee3c26

Browse files
authored
Merge pull request #236 from javascript-tutorial/sync-8d04d0d2
Sync with upstream @ 8d04d0d
2 parents b9d6e76 + 6157a73 commit 4ee3c26

File tree

4 files changed

+19
-14
lines changed

4 files changed

+19
-14
lines changed

1-js/02-first-steps/05-types/article.md

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -213,13 +213,6 @@ O tipo `symbol` é usado para criar identificadores únicos para objetos. Nós o
213213
214214
O operador `typeof` retorna o tipo do argumento. É útil quando queremos processar valores de diferentes tipos de forma diferente ou apenas queremos fazer uma verificação rápida.
215215
216-
Suporta duas formas de sintaxe:
217-
218-
1. Como operador: `typeof x`.
219-
2. Como uma função: `typeof(x)`.
220-
221-
Em outras palavras, trabalha com parênteses ou sem eles. O resultado é o mesmo.
222-
223216
A chamada para `typeof x` retorna uma string com o nome do tipo:
224217
225218
```js
@@ -251,9 +244,19 @@ typeof alert // "function" (3)
251244
As três últimas linhas podem precisar de explicações adicionais:
252245
253246
1. `Math` é um objeto embutido que fornece operações matemáticas. Nós o vamos aprender no capítulo <info:number>. Aqui, ele serve apenas como um exemplo de um objeto.
254-
2. O resultado de `typeof null` é `"object"`. É um erro oficialmente reconhecido no comportamento de `typeof` e mantido para compatibilidade. Naturalmente, `null` não é um objeto. É um valor especial com um tipo separado próprio.
247+
2. O resultado de `typeof null` é `"object"`. É um erro oficialmente reconhecido no comportamento de `typeof`, vindo dos primeiros dias do JavaScript e mantido para compatibilidade. Naturalmente, `null` não é um objeto. É um valor especial com um tipo separado próprio. O comportamento de `typeof` é errado aqui.
255248
3. O resultado de `typeof alert` é `"function"`, porque `alert` é uma função. Vamos estudar as funções nos próximos capítulos onde veremos também que não há nenhum tipo especial "função" em JavaScript. As funções pertencem ao tipo objecto. Mas o `typeof` as trata de forma diferente, retornando `"function"`. Isto, também vem dos primeiros dias do JavaScript. Tecnicamente, é incorreto, mas muito conveniente na prática.
256249
250+
```smart header="A `sintaxe typeof(x)`"
251+
Você pode também encontrar outra sintaxe: `typeof(x)`. è o mesmo que `typeof x`.
252+
253+
Para deixar claro: `typeof` é um operador, não uma função. Os parêntesis aqui não fazem parte de `typeof`. São o tipo de parêntesis usados em matemática para agrupamento.
254+
255+
Geralmente, tais parêntesis contêm uma expressão matemática, como em `(2 + 2)`, mas aqui eles contêm apenas um argumento `(x)`. Sintáticamente, eles permitem evitar o espaço entre o operador `typeof` e o seu argumento, e algumas pessoas gostam disso.
256+
257+
Algumas pessoas preferem `typeof(x)`, embora a sintaxe `typeof x` seja muito mais comum.
258+
```
259+
257260
## Resumo
258261
259262
Existem 8 tipos básicos em JavaScript.
@@ -269,7 +272,7 @@ Existem 8 tipos básicos em JavaScript.
269272
270273
O operador `typeof` nos permite ver que tipo está armazenado em uma variável.
271274
272-
- Duas formas: `typeof x` ou `typeof(x)`.
275+
- Geralmente, usado como `typeof x`, mas `typeof(x)` também é possivel.
273276
- Retorna uma string com o nome do tipo, como `"string"`.
274277
- Para `null` retorna `"object"` -- isso é um erro na linguagem, não é realmente um objeto.
275278

1-js/04-object-basics/04-object-methods/8-chain-calls/solution.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ let ladder = {
2323
}
2424
};
2525

26-
ladder.up().up().down().up().down().showStep(); // 1
26+
ladder.up().up().down().showStep().down().showStep(); // shows 1 then 0
2727
```
2828

2929
We also can write a single call per line. For long chains it's more readable:
@@ -33,7 +33,7 @@ ladder
3333
.up()
3434
.up()
3535
.down()
36-
.up()
36+
.showStep() // 1
3737
.down()
38-
.showStep(); // 1
38+
.showStep(); // 0
3939
```

1-js/04-object-basics/04-object-methods/8-chain-calls/task.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,14 @@ ladder.up();
2828
ladder.up();
2929
ladder.down();
3030
ladder.showStep(); // 1
31+
ladder.down();
32+
ladder.showStep(); // 0
3133
```
3234

3335
Modify the code of `up`, `down` and `showStep` to make the calls chainable, like this:
3436

3537
```js
36-
ladder.up().up().down().showStep(); // 1
38+
ladder.up().up().down().showStep().down().showStep(); // shows 1 then 0
3739
```
3840

3941
Such approach is widely used across JavaScript libraries.

2-ui/3-event-details/6-pointer-events/article.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -271,7 +271,7 @@ Pointer events allow handling mouse, touch and pen events simultaneously, with a
271271

272272
Pointer events extend mouse events. We can replace `mouse` with `pointer` in event names and expect our code to continue working for mouse, with better support for other device types.
273273

274-
For drag'n'drops and complex touch interactions that the browser may decide to hijack and handle on its own - remember to cancel the default action on events and set `touch-events: none` in CSS for elements that we engage.
274+
For drag'n'drops and complex touch interactions that the browser may decide to hijack and handle on its own - remember to cancel the default action on events and set `touch-action: none` in CSS for elements that we engage.
275275

276276
Additional abilities of pointer events are:
277277

0 commit comments

Comments
 (0)