Skip to content

Commit 3cf676c

Browse files
author
Jakub Drozdek
committed
Resolve merge conflicts
1 parent cb1e047 commit 3cf676c

File tree

5 files changed

+17
-109
lines changed

5 files changed

+17
-109
lines changed

1-js/01-getting-started/4-devtools/article.md

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,7 @@ Dokładny widok narzędzi deweloperskich zależy od wersji Chrome'a. Narzędzia
2929
- Widzimy treść błędu zapisaną kolorem czerwonym. W tym przypadku skrypt zawiera nieznaną komendę "lalala".
3030
- Po prawej stronie jest klikalny link do źródła `bug.html:12`, z numerem linii kodu, w której błąd wystąpił.
3131

32-
<<<<<<< HEAD
33-
Poniżej treści błędu znajduje się niebieski symbol `>`. Oznacza linię, w której możemy pisać kod JavaScript. Naciśnij `key:Enter`, aby ten kod uruchomić (`key:Shift+Enter` dodaje nowy wiersz).
34-
=======
35-
Below the error message, there is a blue `>` symbol. It marks a "command line" where we can type JavaScript commands. Press `key:Enter` to run them.
36-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
32+
Poniżej treści błędu znajduje się niebieski symbol `>`. Oznacza linię, w której możemy pisać kod JavaScript. Naciśnij `key:Enter`, aby ten kod uruchomić.
3733

3834
Widzisz już komunikaty błędów i na początek powinno to wystarczyć. W rozdziale pt. "<info:debugging-chrome>" wrócimy do narzędzi deweloperskich, by poznać więcej tajników debuggowania.
3935

@@ -59,16 +55,6 @@ Otwórz Preferencje i przejdź do zakładki "Zaawansowane". Zaznacz na samym dol
5955

6056
Teraz, gdy naciśniesz `key:Cmd+Opt+C`, otworzysz konsolę. Warto dodać, że w górnym pasku menu pojawiła się nowa pozycja o nazwie "Programowanie". Ma w sobie wiele funkcji i opcji konfiguracyjnych.
6157

62-
<<<<<<< HEAD
63-
## Wpisywanie w wielu wierszach
64-
65-
Zazwyczaj gdy wprowadzamy kod JavaScript w konsoli i naciśniemy klawisz `key:Enter`, wykona się on od razu.
66-
67-
Aby wstawić kod, który ma kilka linii, wystarczy wcisnąć na końcu linii klawisz `key:Shift+Enter`, aby przejść do następnej.
68-
=======
69-
## Summary
70-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
71-
7258
## Podsumowanie
7359

7460
- Narzędzia deweloperskie pozwalają podejrzeć błędy, uruchomić komendy javascriptowe, sprawdzać zmienne i wiele, wiele innych.

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

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,7 @@ Tylko komentarze mogą znajdować się powyżej deklaracji `"use strict"`.
4242
```warn header="Nie ma możliwości anulowania `use strict`"
4343
Nie ma takiej dyrektywy jak `"no use strict"`, która przywraca wcześniejsze działanie silnika JavaScript.
4444

45-
<<<<<<< HEAD
4645
Jeśli włączysz tryb ścisły, nie ma już odwrotu.
47-
=======
48-
Once we enter strict mode, there's no going back.
49-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
5046
```
5147
5248
## Konsola przeglądarki

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

Lines changed: 15 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,9 @@ message = 123456;
1010

1111
Część języków programowania stosuje tak zwane "dynamiczne typowanie", które oznacza, że typy danych zmiennych mogą zmienić się w trakcie działania programu.
1212

13-
<<<<<<< HEAD
14-
Wyróżniamy 7 podstawowych typów danych w JavaScripcie. Przedstawimy je teraz ogólnie, w następnych rozdziałach omówimy bardziej szczegółowo.
13+
Wyróżniamy 8 podstawowych typów danych w JavaScripcie. Przedstawimy je teraz ogólnie, w następnych rozdziałach omówimy bardziej szczegółowo.
1514

1615
## Typ liczbowy
17-
=======
18-
There are eight basic data types in JavaScript. Here, we'll cover them in general and in the next chapters we'll talk about each of them in detail.
19-
20-
## Number
21-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
2216

2317
```js
2418
let n = 123;
@@ -68,43 +62,33 @@ Specjalne wartości liczbowe formalnie należą do typu "liczbowego". Oczywiści
6862

6963
Więcej informacji o pracy z liczbami zawarte jest w rozdziale pt. "<info:number>".
7064

71-
<<<<<<< HEAD
72-
## Typ tekstowy
73-
=======
7465
## BigInt
7566

76-
In JavaScript, the "number" type cannot represent integer values larger than <code>2<sup>53</sup></code> (or less than <code>-2<sup>53</sup></code> for negatives), that's a technical limitation caused by their internal representation. That's about 16 decimal digits, so for most purposes the limitation isn't a problem, but sometimes we need really big numbers, e.g. for cryptography or microsecond-precision timestamps.
67+
W JavaScripcie typ liczbowy nie może reprezentować liczb całkowitych większych od <code>2<sup>53</sup></code> (ani ujemnych mniejszych od <code>-2<sup>53</sup></code>) ze względu na ograniczenia techniczne narzucone przez jego reprezentację wewnętrzną. Daje to liczby o długości około 16 cyfr, co w większości przypadków wystarcza. Jednak czasami potrzebujemy skorzystać z naprawdę dużych liczb, np. w krytografii czy znaczników czasowych z dokładnością do mikrosekund.
7768

78-
`BigInt` type was recently added to the language to represent integers of arbitrary length.
69+
Typ `BigInt` został niedawno dodany do języka i reprezentuje liczby całkowite o dowolnej długości.
7970

80-
A `BigInt` is created by appending `n` to the end of an integer literal:
71+
`BigInt` tworzy się poprzez dodanie `n` na końcu liczby:
8172

8273
```js
83-
// the "n" at the end means it's a BigInt
74+
// "n" na końcu oznacza, że to liczba typu BigInt
8475
const bigInt = 1234567890123456789012345678901234567890n;
8576
```
8677

87-
As `BigInt` numbers are rarely needed, we devoted them a separate chapter <info:bigint>.
78+
Z racji tego, że liczby typu `BigInt` są rzadko stosowane, poświęciliśmy im osobny rozdział pt. "<info:bigint>".
8879

89-
```smart header="Compatability issues"
90-
Right now `BigInt` is supported in Firefox and Chrome, but not in Safari/IE/Edge.
80+
```smart header="Problemy z kompatybilnością"
81+
Aktualnie dla typu `BigInt` wsparcie posiadają przeglądarki Firefox i Chrome. Brakuje go w Safari/IE/Edge.
9182
```
9283

93-
## String
94-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
84+
## Typ tekstowy
9585

9686
Ciąg znaków (ang. *string*), zwany także "literałem znakowym" lub "napisem", to typ tekstowy, który zapisujemy przy użyciu cudzysłowów.
9787

9888
```js
99-
<<<<<<< HEAD
10089
let str = "Witaj";
10190
let str2 = 'Można użyć także apostrofów';
102-
let phrase = `Można dołączyć zmienną ${str}`;
103-
=======
104-
let str = "Hello";
105-
let str2 = 'Single quotes are ok too';
106-
let phrase = `can embed another ${str}`;
107-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
91+
let phrase = `Można dołączyć dodatkową zmienną ${str}`;
10892
```
10993

11094
W JavaScripcie istnieją 3 typy cudzysłowów.
@@ -113,11 +97,7 @@ W JavaScripcie istnieją 3 typy cudzysłowów.
11397
2. Apostrofy: `'Witaj'`.
11498
3. Grawisy (ang. *backtick*): <code>&#96;Witaj&#96;</code>.
11599

116-
<<<<<<< HEAD
117-
W JavaScripcie nie ma różnicy między cudzysłowami a apostrofami.
118-
=======
119-
Double and single quotes are "simple" quotes. There's practically no difference between them in JavaScript.
120-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
100+
Pojedyncze i podwójne cudzysłowy są cudzysłowami prostymi. W JavaScripcie nie ma między nimi żadnej różnicy.
121101

122102
Grawisy są "rozszerzeniem funkcjonalności" zwykłych apostrofów i cudzysłowów. Pozwalają na dodanie zmiennej i wyrażeń do ciągu znaków poprzez umieszczenie ich wewnątrz `${}`, przykładowo:
123103

@@ -140,22 +120,13 @@ alert( "Wynik to ${1 + 2}" ); // Wynik to ${1 + 2} (cudzysłów traktuje ${…}
140120

141121
Więcej o ciągach znaków można przeczytać w rozdziale pt. "<info:string>".
142122

143-
<<<<<<< HEAD
144123
```smart header="JavaScript nie posiada typu *znakowego*."
145-
W niektórych językach istnieje specjalny typ "znakowy", używany do przechowywania pojedynczych znaków. Przykładowo, w językach C i Java możemy użyć typu `char`.
146-
=======
147-
```smart header="There is no *character* type."
148-
In some languages, there is a special "character" type for a single character. For example, in the C language and in Java it is called "char".
149-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
124+
W niektórych językach istnieje specjalny typ "znakowy", używany do przechowywania pojedynczych znaków. Przykładowo, w językach C i Java możemy użyć typu o nazwie "char".
150125
151126
W JavaScripcie nie ma takiego typu. Mamy do dyspozycji jedynie `string`. Ciąg znaków może być pusty albo zawierać jeden i więcej znaków.
152127
```
153128

154-
<<<<<<< HEAD
155-
## Typ logiczny
156-
=======
157-
## Boolean (logical type)
158-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
129+
## Typ logiczny (boolean)
159130

160131
Typ logiczny (ang. *boolean*) posiada dwie wartości: `true` (prawda) lub `false` (fałsz).
161132

@@ -273,33 +244,19 @@ Ostatnie trzy linijki wymagają dodatkowego wyjaśnienia.
273244
2. Wynikiem wywołania `typeof null` jest `object`. Jest to znany błąd związany z `typeof`, nie został on jednak poprawiony ze względu na wsteczną kompatybilność. Oczywiście `null` nie jest obiektem - posiada własny typ.
274245
3. Wynikiem wywołania `typeof alert` jest `"function"` ze względu na to, że `alert` jest po prostu funkcją. O funkcjach napisaliśmy więcej w następnych rozdziałach, gdzie zauważamy, że tak naprawdę nie ma typu "function" w JavaScripcie. Funkcje należą do typu "object". Jednak `typeof` traktuje funkcje inaczej, zwracając `"function"`, co nie jest do końca poprawne, lecz bardzo wygodne w praktyce.
275246

276-
<<<<<<< HEAD
277247

278248
## Podsumowanie
279249

280-
W JavaScripcie wyróżniamy 7 podstawowych typów danych.
250+
W JavaScripcie wyróżniamy 8 podstawowych typów danych.
281251

282252
- `number` dla wszystkich liczb: całkowitych lub zmiennoprzecinkowych.
253+
- `bigint` dla liczb całkowitych o dowolnej długości.
283254
- `string` dla ciągów znaków. Może być pusty albo zawierać jeden czy więcej znaków; nie ma oddzielnego typu dla pojedynczego znaku.
284255
- `boolean` dla `true`/`false` (prawda/fałsz).
285256
- `null` dla pustych wartości -- autonomiczny typ, który posiada jedną wartość: `null`.
286257
- `undefined` dla niezdefiniowanych wartości -- autonomiczny typ, który posiada jedną wartość: `undefined`.
287258
- `object` dla bardziej złożonych struktur danych.
288259
- `symbol` dla unikalnych identyfikatorów.
289-
=======
290-
## Summary
291-
292-
There are 8 basic data types in JavaScript.
293-
294-
- `number` for numbers of any kind: integer or floating-point, integers are limited by ±2<sup>53</sup>.
295-
- `bigint` is for integer numbers of arbitrary length.
296-
- `string` for strings. A string may have one or more characters, there's no separate single-character type.
297-
- `boolean` for `true`/`false`.
298-
- `null` for unknown values -- a standalone type that has a single value `null`.
299-
- `undefined` for unassigned values -- a standalone type that has a single value `undefined`.
300-
- `object` for more complex data structures.
301-
- `symbol` for unique identifiers.
302-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
303260

304261
Operator `typeof` pozwala na sprawdzenie typu zmiennej.
305262

1-js/02-first-steps/06-type-conversions/article.md

Lines changed: 1 addition & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,6 @@
11
# Rzutowanie typów
22

3-
<<<<<<< HEAD
43
W większości przypadków operatory i funkcje automatycznie rzutują przekazywane do nich wartości na właściwy typ.
5-
=======
6-
Most of the time, operators and functions automatically convert the values given to them to the right type.
7-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
84

95
Na przykład `alert` automatycznie zmieni typ dowolnej wartości do typu tekstowego. Matematyczne operacje rzutują wartości do typów liczbowych.
106

@@ -84,22 +80,7 @@ alert( Number(false) ); // 0
8480

8581
Zauważ, że `null` i `undefined` zachowują się inaczej. `null` jest konwertowany do zera, a `undefined` do `NaN`.
8682

87-
<<<<<<< HEAD
88-
````smart header="Operator '+' łączy ciągi znaków"
89-
Większość operacji matematycznych rzutuje wartości do typu liczbowego. Jedynym wyjątkiem jest `+`. Jeśli jedna z dodawanych wartości będzie typu tekstowego, druga również jest rzutowana do typu tekstowego.
90-
91-
Wtedy następuje ich konkatenacja (połączenie):
92-
93-
```js run
94-
alert( 1 + '2' ); // '12' (tekst po prawej)
95-
alert( '1' + 2 ); // '12' (tekst po lewej)
96-
```
97-
98-
Dzieje się tak w sytuacji, gdy przynajmniej jeden z argumentów jest typu tekstowego. W przeciwnym wypadku wartości są rzutowane na typ liczbowy.
99-
````
100-
=======
101-
Most mathematical operators also perform such conversion, we'll see that in the next chapter.
102-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
83+
Większość operatorów matematycznych także wykonuje taką konwersję. Więcej na ten temat dowiesz się z kolejnego rozdziału.
10384

10485
## Rzutowanie do typu logicznego
10586

5-network/02-formdata/article.md

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -53,27 +53,15 @@ Kod serwera jest poza naszym zakresem zainteresowania, zatem nie pokazujemy go w
5353

5454
Pola w `FormData` możemy zmieniać następującymi metodami:
5555

56-
<<<<<<< HEAD
5756
- `formData.append(name, value)` - dodaj pole formularza o nazwie `name` i wartości `value`,
5857
- `formData.append(name, blob, fileName)` - dodaj pole tak jakby było znacznikiem `<input type="file">`; trzeci argument `fileName` ustawia nazwę pliku (nie nazwę formularza), tak jakby była nazwą pliku w systemie plików użytkownika,
5958
- `formData.delete(name)` - usuń pole `name`,
6059
- `formData.get(name)` - pobierz wartość pola `name`,
6160
- `formData.has(name)` - jeżeli istnieje pole `name`, zwróć `true`; w innym przypadku zwróć `false`
62-
=======
63-
- `formData.append(name, value)` - add a form field with the given `name` and `value`,
64-
- `formData.append(name, blob, fileName)` - add a field as if it were `<input type="file">`, the third argument `fileName` sets file name (not form field name), as it were a name of the file in user's filesystem,
65-
- `formData.delete(name)` - remove the field with the given `name`,
66-
- `formData.get(name)` - get the value of the field with the given `name`,
67-
- `formData.has(name)` - if there exists a field with the given `name`, returns `true`, otherwise `false`
68-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
6961

7062
Formularz, z technicznego punktu widzenia, może mieć pól o nazwie `name`, tak więc wiele wywołań metody `append` doda wiele pól o tej samej nazwie.
7163

72-
<<<<<<< HEAD
7364
Istnieje również metoda `set`, która ma taką samą składnię jak `append`. Różnica polega na tym, że `.set` usuwa wszystkie pola o nazwie `name`, a następnie dodaje nowe pole. Dzięki temu zapewnia, że istnieje tylko jedno pole o nazwie `name`. Pozostała część wygląda jak w metodzie `append`:
74-
=======
75-
There's also method `set`, with the same syntax as `append`. The difference is that `.set` removes all fields with the given `name`, and then appends a new field. So it makes sure there's only one field with such `name`, the rest is just like `append`:
76-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
7765

7866
- `formData.set(name, value)`,
7967
- `formData.set(name, blob, fileName)`.

0 commit comments

Comments
 (0)