Skip to content

Commit b21e7f2

Browse files
Bartłomiej Kalembasculpt0r
Bartłomiej Kalemba
authored andcommitted
Small corrects
1 parent 270905c commit b21e7f2

File tree

1 file changed

+7
-7
lines changed
  • 1-js/02-first-steps/12-nullish-coalescing-operator

1 file changed

+7
-7
lines changed

1-js/02-first-steps/12-nullish-coalescing-operator/article.md

+7-7
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ W tym artykule zakładamy, że wyrażenie jest "zdefiniowane", jeżeli nie jest
77
Operator łączenia wartości null zapisujemy jako dwa znaki zapytania `??`.
88

99
Wynikiem `a ?? b` jest:
10-
- jeżeli `a` jest zdefiniowane, to wynikiem jest `a`,
11-
- jeżeli `a` nie jest zdefiniowane, to wynikiem jest `b`.
10+
- `a` jeżeli jest zdefiniowane,
11+
- `b` jeżeli `a` nie jest zdefiniowane.
1212

1313

1414
Innymi słowy, `??` zwraca pierwszy argument jeżeli jego wartość jest inna niż `null/undefined`. W przeciwnym razie, zwraca drugi argument.
@@ -43,7 +43,7 @@ Możemy również użyć sekwencji `??`, żeby wybrać pierwszą wartość z li
4343
4444
Powiedzmy, że mamy dane użytkownika w zmiennej `firstName`, `lastName` oraz `nickName`. Wszystkie mogą być niezdefiniowane, jeżeli użytkownik zdecyduje się ich nie wprowadzać.
4545
46-
Chcielibyśmy wyświetlić nazwę użytkownika użyuwając jednej z tych zmiennych, albo wyświetlić "Anonim", jeżeli wszystkie są niezdefiniowane.
46+
Chcielibyśmy wyświetlić nazwę użytkownika używając jednej z tych zmiennych, albo wyświetlić "Anonim", jeżeli wszystkie są niezdefiniowane.
4747
4848
Użyjmy do tego operatora `??`:
4949
@@ -81,7 +81,7 @@ Z drugiej strony, Operator łączenia wartości null `??` został dodany do Java
8181
8282
Ważną różnicą pomiędzy nimi jest:
8383
- `||` zwraca pierwszą *truthy* wartość.
84-
- `??` zwraca pierwszą *defined* wartość.
84+
- `??` zwraca pierwszą *zdefiniowaną* wartość.
8585
8686
Innymi słowy, `||` nie rozróżnia pomiędzy `false`, `0`, pustym stringiem `""` i `null/undefined`. Wszystkie one są takie same -- falsy wartości. Jeżeli którakolwiek z tych wartości jest pierwszym argumentem w `||`, wtedy otrzymamy drugi argument jako wynik.
8787
@@ -103,7 +103,7 @@ alert(height ?? 100); // 0
103103
104104
Jeżeli zerowa wysokość jest poprawną wartością, która nie powinna być zastąpiona wartością domyślną, wtedy `??` sprawdzi się doskonale.
105105
106-
## Precedence /
106+
## Priorytet /
107107
108108
Priorytet operatora `??` jest raczej niski: `5` [tabela MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence#Table). Więc `??` jest przetwarzane przed `=` i `?`, ale po większości innych operatorów, jak `+`, `*`.
109109
@@ -141,7 +141,7 @@ let x = 1 && 2 ?? 3; // Błąd składni
141141
142142
Obostrzenia są oczywiście dyskusyjne, ale zostały dodane do specyfikacji języka celem uniknięcia błędów programowania, kiedy ludzie zaczną zmieniać z `??` na `||`.
143143
144-
Używaj dokładnych nawiasów żeby uniknąć problemu:
144+
Używaj nawiasów żeby uniknąć problemu:
145145
146146
```js run
147147
*!*
@@ -158,7 +158,7 @@ alert(x); // 2
158158
Jest używany do przypisania domyślnej wartości do zmiennej:
159159
160160
```js
161-
// ustaw height=100, jeżeli height jest null lub undefined
161+
// ustaw height=100, jeżeli height jest null lub undefined
162162
height = height ?? 100;
163163
```
164164

0 commit comments

Comments
 (0)