You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 1-js/01-getting-started/4-devtools/article.md
+1-15Lines changed: 1 addition & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,11 +29,7 @@ Dokładny widok narzędzi deweloperskich zależy od wersji Chrome'a. Narzędzia
29
29
- Widzimy treść błędu zapisaną kolorem czerwonym. W tym przypadku skrypt zawiera nieznaną komendę "lalala".
30
30
- Po prawej stronie jest klikalny link do źródła `bug.html:12`, z numerem linii kodu, w której błąd wystąpił.
31
31
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ć.
37
33
38
34
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.
39
35
@@ -59,16 +55,6 @@ Otwórz Preferencje i przejdź do zakładki "Zaawansowane". Zaznacz na samym dol
59
55
60
56
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.
61
57
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
-
72
58
## Podsumowanie
73
59
74
60
- Narzędzia deweloperskie pozwalają podejrzeć błędy, uruchomić komendy javascriptowe, sprawdzać zmienne i wiele, wiele innych.
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/05-types/article.md
+15-58Lines changed: 15 additions & 58 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,15 +10,9 @@ message = 123456;
10
10
11
11
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.
12
12
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.
15
14
16
15
## 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
22
16
23
17
```js
24
18
let n =123;
@@ -68,43 +62,33 @@ Specjalne wartości liczbowe formalnie należą do typu "liczbowego". Oczywiści
68
62
69
63
Więcej informacji o pracy z liczbami zawarte jest w rozdziale pt. "<info:number>".
70
64
71
-
<<<<<<<HEAD
72
-
## Typ tekstowy
73
-
=======
74
65
## BigInt
75
66
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.
77
68
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.
79
70
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:
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>".
88
79
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.
91
82
```
92
83
93
-
## String
94
-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
84
+
## Typ tekstowy
95
85
96
86
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.
97
87
98
88
```js
99
-
<<<<<<<HEAD
100
89
let str = "Witaj";
101
90
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}`;
108
92
```
109
93
110
94
W JavaScripcie istnieją 3 typy cudzysłowów.
@@ -113,11 +97,7 @@ W JavaScripcie istnieją 3 typy cudzysłowów.
113
97
2. Apostrofy:`'Witaj'`.
114
98
3.Grawisy (ang. *backtick*):<code>`Witaj`</code>.
115
99
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.
121
101
122
102
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:
123
103
@@ -140,22 +120,13 @@ alert( "Wynik to ${1 + 2}" ); // Wynik to ${1 + 2} (cudzysłów traktuje ${…}
140
120
141
121
Więcej o ciągach znaków można przeczytać w rozdziale pt. "<info:string>".
142
122
143
-
<<<<<<< HEAD
144
123
```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".
150
125
151
126
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.
152
127
```
153
128
154
-
<<<<<<< HEAD
155
-
## Typ logiczny
156
-
=======
157
-
## Boolean (logical type)
158
-
>>>>>>> 5b195795da511709faf79a4d35f9c5623b6dbdbd
129
+
## Typ logiczny (boolean)
159
130
160
131
Typ logiczny (ang. *boolean*) posiada dwie wartości: `true` (prawda) lub `false` (fałsz).
161
132
@@ -273,33 +244,19 @@ Ostatnie trzy linijki wymagają dodatkowego wyjaśnienia.
273
244
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.
274
245
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.
275
246
276
-
<<<<<<< HEAD
277
247
278
248
## Podsumowanie
279
249
280
-
W JavaScripcie wyróżniamy 7 podstawowych typów danych.
250
+
W JavaScripcie wyróżniamy 8 podstawowych typów danych.
281
251
282
252
-`number` dla wszystkich liczb: całkowitych lub zmiennoprzecinkowych.
253
+
-`bigint` dla liczb całkowitych o dowolnej długości.
283
254
-`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.
284
255
-`boolean` dla `true`/`false` (prawda/fałsz).
285
256
-`null` dla pustych wartości -- autonomiczny typ, który posiada jedną wartość: `null`.
286
257
-`undefined` dla niezdefiniowanych wartości -- autonomiczny typ, który posiada jedną wartość: `undefined`.
287
258
-`object` dla bardziej złożonych struktur danych.
288
259
-`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
303
260
304
261
Operator `typeof` pozwala na sprawdzenie typu zmiennej.
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/06-type-conversions/article.md
+1-20Lines changed: 1 addition & 20 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,6 @@
1
1
# Rzutowanie typów
2
2
3
-
<<<<<<< HEAD
4
3
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
8
4
9
5
Na przykład `alert` automatycznie zmieni typ dowolnej wartości do typu tekstowego. Matematyczne operacje rzutują wartości do typów liczbowych.
10
6
@@ -84,22 +80,7 @@ alert( Number(false) ); // 0
84
80
85
81
Zauważ, że `null` i `undefined` zachowują się inaczej. `null` jest konwertowany do zera, a `undefined` do `NaN`.
86
82
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.
Copy file name to clipboardExpand all lines: 5-network/02-formdata/article.md
-12Lines changed: 0 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -53,27 +53,15 @@ Kod serwera jest poza naszym zakresem zainteresowania, zatem nie pokazujemy go w
53
53
54
54
Pola w `FormData` możemy zmieniać następującymi metodami:
55
55
56
-
<<<<<<< HEAD
57
56
-`formData.append(name, value)` - dodaj pole formularza o nazwie `name` i wartości `value`,
58
57
-`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,
59
58
-`formData.delete(name)` - usuń pole `name`,
60
59
-`formData.get(name)` - pobierz wartość pola `name`,
61
60
-`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
69
61
70
62
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.
71
63
72
-
<<<<<<< HEAD
73
64
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`:
0 commit comments