aboutsummaryrefslogtreecommitdiff
path: root/files/pl/orphaned/web/javascript
diff options
context:
space:
mode:
authorFlorian Merz <me@fiji-flo.de>2021-02-11 14:49:24 +0100
committerFlorian Merz <me@fiji-flo.de>2021-02-11 14:49:24 +0100
commitde5c456ebded0e038adbf23db34cc290c8829180 (patch)
tree2819c07a177bb7ec5f419f3f6a14270d6bcd7fda /files/pl/orphaned/web/javascript
parent8260a606c143e6b55a467edf017a56bdcd6cba7e (diff)
downloadtranslated-content-de5c456ebded0e038adbf23db34cc290c8829180.tar.gz
translated-content-de5c456ebded0e038adbf23db34cc290c8829180.tar.bz2
translated-content-de5c456ebded0e038adbf23db34cc290c8829180.zip
unslug pl: move
Diffstat (limited to 'files/pl/orphaned/web/javascript')
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/dodawanie_obiektom_nowej_funkcjonalności/index.html20
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_manipulacji_obiektem/index.html50
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_obsługi_wyjątków/index.html42
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_obsługi_wyjątków/instrukcja_throw/index.html45
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_obsługi_wyjątków/instrukcja_try...catch/index.html114
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_break/index.html27
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_continue/index.html51
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_do_...while/index.html23
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_for/index.html56
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_label/index.html23
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_while/index.html38
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/o_tym_przewodniku/index.html159
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_array/index.html94
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_boolean/index.html14
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_date/index.html87
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_function/index.html50
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_math/index.html72
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_number/index.html83
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_regexp/index.html12
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_string/index.html92
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/operatory/operatory_przypisania/index.html67
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/podgląd_klas_liveconnect/index.html47
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/index.html37
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/tworzenie_hierarchii/index.html149
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/własności_obiektu/dodawanie_własności/index.html23
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/własności_obiektu/dziedziczenie_własności/index.html33
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/własności_obiektu/index.html19
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_wyrażeniami_regularnymi/przykłady_wyrażeń_regularnych/index.html122
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_zamknięciami/index.html286
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/definiowanie_metod/index.html48
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/definiowanie_własności_typu_obiektu/index.html19
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/indeksowanie_własności_obiektu/index.html16
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/index.html22
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/usuwanie_własności/index.html26
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/używanie_inicjacji_obiektu/index.html36
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/zastosowanie_'this'_do_obiektu_referencji/index.html32
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/zastosowanie_konstruktorów_funkcji/index.html62
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_wyrażenia_regularnego/index.html43
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/zapisywanie_wzorca_wyrażenia_regularnego/index.html215
-rw-r--r--files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/zastosowanie_obiektu_arguments/index.html41
-rw-r--r--files/pl/orphaned/web/javascript/na_początek/index.html903
-rw-r--r--files/pl/orphaned/web/javascript/reference/global_objects/array/prototype/index.html12
-rw-r--r--files/pl/orphaned/web/javascript/referencje/o_tym_dokumencie/konwencje_formatowania_tekstu/index.html31
43 files changed, 3441 insertions, 0 deletions
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/dodawanie_obiektom_nowej_funkcjonalności/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/dodawanie_obiektom_nowej_funkcjonalności/index.html
new file mode 100644
index 0000000000..9ba9895af5
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/dodawanie_obiektom_nowej_funkcjonalności/index.html
@@ -0,0 +1,20 @@
+---
+title: Dodawanie obiektom nowej funkcjonalności.
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Dodawanie_obiektom_nowej_funkcjonalności.
+---
+<p>Każdy obiekt JavaScriptu posiada zadeklarowane, właściwe dla siebie funkcje, jak np. obiekt String posiada takie funkcje jak <code>toUpperCase()</code> czy<code> toLowerCase()</code>, które odpowiadają odpowiednio za przekonwertowanie liter na duże i małe. Za pomocą prototypów możemy dodać własne funkcje. Poniżej przedstawiony został kod, który zwraca pierwszą literę łańcucha znaków, na którym została wykonana nasza metoda.</p>
+<p> </p>
+<p><code>String.prototype.firstLetter = function() {</code></p>
+<p><code> var callObject = this;</code></p>
+<p><code> return callObject.charAt(0);<br>
+</code></p>
+<p><code>};</code></p>
+<p> </p>
+<p>Dysponując tak przygotowanym kodem, możemy teraz uż<font color="#313131" face="arial, sans-serif">y</font><span class="Apple-style-span" style="color: rgb(49, 49, 49); font-family: arial, sans-serif;">ć naszej metody <code>firstLetter()</code> na dowolnym łańcuchu znaków.</span></p>
+<p> </p>
+<p><code>alert("hello".firstLetter());</code></p>
+<p> </p>
+<p>Powyższy kod wyświetli w okienku dialogowym typu alert literę h.</p>
+<p> </p>
+<p> </p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_manipulacji_obiektem/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_manipulacji_obiektem/index.html
new file mode 100644
index 0000000000..45442f2c63
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_manipulacji_obiektem/index.html
@@ -0,0 +1,50 @@
+---
+title: Instrukcje manipulacji obiektem
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_manipulacji_obiektem
+tags:
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Instrukcja_manipulacji_obiektem" name="Instrukcja_manipulacji_obiektem">Instrukcja manipulacji obiektem</h3>
+<p>JavaScript używa instrukcji <strong>for...in</strong> i <strong>with</strong> do manipulacji obiektami.</p>
+<h4 id="Instrukcja_for...in" name="Instrukcja_for...in">Instrukcja for...in</h4>
+<p>Instrukcja <code><strong>for...in</strong></code> cyklicznie powtarza specyficzną wartość wszystkich właściwości obiektu. Dla każdej oddzielnej właściwości, JavaScript wykonuje specyficzna instrukcję. Instrukcja <code><strong>for...in</strong></code> wygląda jak pętle:</p>
+<pre>for (variable in object) {
+ instrukcje
+}
+</pre>
+<p><strong>Przykład</strong><br>
+ Następujaca funkcja pobiera obiekt i jego nazwę jako argument. Następnie iteruje ją nad wszystkimi właściwościami obiektu i zwraca łańcuch, którym jest lista właściwościami nazw i ich wartości.</p>
+<pre>function dump_props(obj, obj_name) {
+ var result = "";
+ for (var i in obj) {
+ result += obj_name + "." + i + " = " + obj[i] + "&lt;BR&gt;"
+ }
+ result += "&lt;HR&gt;";
+ return result;
+}
+</pre>
+<p>Dla obiektu <code><strong>car</strong></code> z właściwościami <code><strong>make</strong></code> i <code><strong>model</strong></code>, będzie rezultat:</p>
+<pre>car.make = Ford
+car.model = Mustang
+</pre>
+<h4 id="Instrukcja_with" name="Instrukcja_with">Instrukcja with</h4>
+<p>Instrukcja <code><strong>with</strong></code> nawiązuje z domyślnym obiektem <code><strong>for</strong></code> ustawienia instrukcji. W JavaScript jakikolwiek z niewykwalifikowanych nazw bez ustawień instrukcji określającej domyślny obraz. Jeśli niewykwalifikowana nazwa odpowiada właściwości, to właściwość jest użyta w instrukcji; w przeciwnym wypadku zostanie użyta, zmienna lokalna lub globalna.</p>
+<p>Składnia pętli <code><strong>with</strong></code> wygląda:</p>
+<pre>with (object){
+ instrukcja
+}
+</pre>
+<p><strong>Przykład</strong><br>
+ Następująca instrukcja <code><strong>with</strong></code> określa, że obiekt <code><strong>Math</strong></code> jest obiektem domyślnym. Następująca instrukcja <code><strong>with</strong></code> odwołuje sie do właściwości instrukcji metod <code><strong>PI</strong></code> i <code><strong>cos</strong></code> i <code><strong>sin</strong></code>, bez specyficznego obiektu. JavaScript bierze na siebie obiekt <code><strong>Math</strong></code> dla tych referencji.</p>
+<pre>var a, x, y;
+var r=10
+with (Math) {
+ a = PI * r * r;
+ x = r * cos(PI);
+ y = r * sin(PI/2);
+}
+</pre>
+<p>Nota: Używając instrukcji <a href="/pl/Dokumentacja_j%C4%99zyka_JavaScript_1.5/Polecenia/with" title="pl/Dokumentacja_języka_JavaScript_1.5/Polecenia/with">with</a> znacząco spowolniasz jego działanie.</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_obsługi_wyjątków/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_obsługi_wyjątków/index.html
new file mode 100644
index 0000000000..a31e3144d3
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_obsługi_wyjątków/index.html
@@ -0,0 +1,42 @@
+---
+title: Instrukcje obsługi wyjątków
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_obsługi_wyjątków
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Instrukcje_obs.C5.82ugi_wyj.C4.85tk.C3.B3w" name="Instrukcje_obs.C5.82ugi_wyj.C4.85tk.C3.B3w">Instrukcje obsługi wyjątków</h3>
+<p>Możesz wywoływać wyjątki używając instrukcji <code>throw</code> i obsługiwać je za pomocą instrukcji <code>try...catch</code>.</p>
+<p>Instrukcji <code>try...catch</code> używa się również do obsługi wyjątków Javy. Zobacz <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Komunikacja_mi%c4%99dzy_JavaScript_a_Java#Obs.C5.82uga_wyj.C4.85tk.C3.B3w_Javy_w_JavaScript">Obsługa wyjątków Javy w JavaScript</a> i <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Komunikacja_mi%c4%99dzy_Java_a_JavaScript">Komunikacja między Java a JavaScript</a>, aby uzyskać więcej informacji.</p>
+<ul>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Instrukcje_obs%c5%82ugi_wyj%c4%85tk%c3%b3w/Instrukcja_throw">Instrukcja throw</a></li>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Instrukcje_obs%c5%82ugi_wyj%c4%85tk%c3%b3w/Instrukcja_try...catch">Instrukcja try...catch</a></li>
+</ul>
+<h3 id="Typy_wyj.C4.85tk.C3.B3w" name="Typy_wyj.C4.85tk.C3.B3w">Typy wyjątków</h3>
+<p>Niemal każdy wyjątek może zostać wywołany w JavaScripcie. Niemniej jednak nie wszystkie wywołane obiekty są tworzone jako równe. Choć częste jest wyświetlanie liczb lub łańcuchów znaków jako błędów, użycie jednego z typów wyjątków stworzonych szczególnie do tego celu jest bardziej efektywne:</p>
+<ul>
+ <li>Wyjątki ECMAScript:
+ <ul>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Error">Error</a></li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/EvalError">EvalError</a></li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/RangeError">RangeError</a></li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/ReferenceError">ReferenceError</a></li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/SyntaxError">SyntaxError</a></li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/TypeError">TypeError</a></li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/URIError">URIError</a></li>
+ </ul>
+ </li>
+ <li>Wyjątki DOM:
+ <ul>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/DOMException">DOMException</a></li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/EventException">EventException</a></li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/RangeException">RangeException</a></li>
+ <li>... (?)</li>
+ </ul>
+ </li>
+ <li><a href="pl/NsIXPCException">nsIXPCException</a> (<a href="pl/XPConnect">XPConnect</a>)</li>
+</ul>
+<p>{{ PreviousNext("Przewodnik po języku JavaScript 1.5:Instrukcje komentarzy", "Przewodnik po języku JavaScript 1.5:Instrukcje obsługi wyjątków:Instrukcja throw") }}</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_obsługi_wyjątków/instrukcja_throw/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_obsługi_wyjątków/instrukcja_throw/index.html
new file mode 100644
index 0000000000..d09220143a
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_obsługi_wyjątków/instrukcja_throw/index.html
@@ -0,0 +1,45 @@
+---
+title: Instrukcja throw
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_obsługi_wyjątków/Instrukcja_throw
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<div class="noinclude">
+ <h3 id="Instrukcja_throw" name="Instrukcja_throw">Instrukcja throw</h3>
+ <p>Użyj instrukcji <code>throw</code>, aby wywołać wyjątek. Gdy wywołujesz wyjątek, określasz wyrażenie zawierające wartość, która ma zostać wywołana:</p>
+ <pre class="eval">throw wyrazenie;
+</pre>
+ <p>Możesz wywołać dowolne wyrażenie, nie tylko wyrażenie konkretnego typu. Poniższy kod wywołuje kilka wyjątków różnych typów:</p>
+ <pre class="eval">throw "Error2";
+throw 42;
+throw true;
+throw {toString: function() { return "Jestem obiektem!"; } };
+</pre>
+ <div class="note">
+ <b>Uwaga:</b> Możesz określić obiekt podczas wywoływania wyjątku. Można się wtedy odnieść do własności obiektu w bloku <code>catch</code>. Poniższy przykład tworzy obiekt <code>myUserException</code> typu <code>UserException</code> i używa go w instrukcji throw.</div>
+ <p> </p>
+ <pre class="eval">// Utwórz obiekt typu UserException
+function UserException (message)
+{
+ this.message=message;
+ this.name="UserException";
+}
+
+// Przekonwertuj wyjątek do ładnego łańcucha znaków,
+// gdy ma on zostać użyty jako łańcuch znaków (np. przez konsolę błędów)
+UserException.prototype.toString = function ()
+{
+ return this.name + ': "' + this.message + '"';
+}
+
+// Utwórz instancję typu obiektu i wywołaj ją
+throw new UserException("Za duża wartość");
+</pre>
+ <div class="noinclude">
+ <p>{{ PreviousNext("Przewodnik po języku JavaScript 1.5:Instrukcje obsługi wyjątków", "Przewodnik po języku JavaScript 1.5:Instrukcje obsługi wyjątków:Instrukcja try...catch") }}</p>
+ </div>
+</div>
+<p> </p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_obsługi_wyjątków/instrukcja_try...catch/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_obsługi_wyjątków/instrukcja_try...catch/index.html
new file mode 100644
index 0000000000..229633025c
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_obsługi_wyjątków/instrukcja_try...catch/index.html
@@ -0,0 +1,114 @@
+---
+title: Instrukcja try...catch
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_obsługi_wyjątków/Instrukcja_try...catch
+tags:
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Instrukcja_try...catch" name="Instrukcja_try...catch">Instrukcja <code><b>try...catch</b></code></h3>
+<p>Instrukcja <code><b>try...catch</b></code> śledzi blok instrukcji try, i określa jedną lub więcej odpowiedzi które powinny wyrzucić wyjątki. Jeśli wyjątek jest rzucony, instrukcja <code><b>try...catch</b></code> go łapie.</p>
+<p>Instrukcja <code><b>try...catch</b></code> stanowi blok <code><b>try</b></code>, który stanowi jedną lub więcej instrukcji, i zero lub więcęj bloków stanowiących <code><b>catch</b></code>, instrukcję, który określa będzie wykonana jeśli wyjątek wystąpi w bloku try. To jest, to co nastąpi w bloku <code><b>try</b></code>, i jeśli nie nastąpi, chcesz przejąć kontrolę bloku <code><b>catch</b></code>. Jeśli jakakolwiek instrukcja bez bloku <code><b>try</b></code> (lub w nazwie funkcji nie występuje blok <code><b>try</b></code>) wyrzucany jest wyjątek, kontrola natychmiastowo wraca do bloku wyjątku, <code><b>catch</b></code>. Jeśli nie jest wyrzucony wyjątek w następującym bloku <code><b>try</b></code>, blok <code><b>catch</b></code> zostanie opuszczony. Blok kończący (finall) wykonany jest po wykonanych blokach <code><b>try</b></code> i <code><b>catch</b></code> przed instrukcjami następująca instrukcja <code><b>try...catch</b></code>.</p>
+<p>Następujący przykład używa instrukcji <code><b>try...catch</b></code>. Przykład nazywa się funkcją, która odzyskuje nazwę miesiąca z tablicy, która jest ulokowana w wartości przychodzącej do funkcji. Jeśli wartość nie jest przesyłana jako numer miesiąca (1-12), wyrzucony jest wyjątek wartości <code><b>InvalidMonthNo</b></code> i instrukcje w bloku <code>catch</code> ustawiają zmienną <code><b>monthName</b></code> na <code><b>unknown</b></code>.</p>
+<pre>function getMonthName (mo) {
+ mo=mo-1; // Adjust month number for array index (1=Jan, 12=Dec)
+ var months=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul",
+ "Aug","Sep","Oct","Nov","Dec");
+ if (months[mo] != null) {
+ return months[mo]
+ } else {
+ throw "InvalidMonthNo"
+ }
+}
+
+try {
+// statements to try
+ monthName=getMonthName(myMonth) // function could throw exception
+}
+catch (e) {
+ monthName="unknown"
+ logMyErrors(e) // pass exception object to error handler
+}
+</pre>
+<h4 id="Blok_catch" name="Blok_catch">Blok <code><b>catch</b></code></h4>
+<p>Użyj pojedyńczego bloku <code><b>catch</b></code> do uchwytu wszystkich wyjątków, które mogą generować w bloku <code><b>try</b></code>, lub Ty potrafisz użyć separatora bloków <code><b>catch</b></code>, każdego, którego uchwyty są szczególnym typem wyjątku.</p>
+<p><b>Pojedyńczy blok catch</b><br>
+ Użyj pojedyńczej instrukcji <code><b>try...catch</b></code>, bloku <code><b>catch</b></code> (odzyskanie bloku) wykonane kodu błędu uchwytu dla kazdego wyjątku wyrzuconego w bloku <code><b>try</b></code>.</p>
+<p>Pojedyńczy blok <code><b>catch</b></code> ma następującą składnie:</p>
+<pre>catch (catchID) {
+ statements
+}
+</pre>
+<p>Blok <code><b>catch</b></code> wyszczególnia identyfikatory (<code><b>catchID</b></code> w poprzedzającej składni), którego wartość jest trzymana w bliżej określnonej instrukcji <code><b>throw</b></code>; użyj tego identyfikatora do pobrania informacji o wyjątku, który był zrzucony. JavaScript tworzy ten identyfikator, kiedy <code><b>catch</b></code> jest wstępem; ostatni identyfikator tylko dla czasu działanaia bloku <code><b>catch</b></code>; po bloku <code><b>catch</b></code> kończy wykonywanie identyfikatora, który jest nie długo dostępny.</p>
+<p>Na przykład, następujący kod wyrzuca wyjątek. Kiedy wyjątek ma miejsce kontrolne cesje są w bloku <code><b>catch</b></code>.</p>
+<pre>try {
+ throw "myException" // generuje wyjątek
+}
+catch (e) {
+// instrukcja trzymająca jakikolwiek wyjątek
+ logMyErrors(e) // przechodzi z obiektu wyjątku exception object to error handler
+}
+</pre>
+<p><b>Wielokrotne bloki catch</b><br>
+ Pojedyńcza instrukcja <code><b>try</b></code> stanowi wielokrotny warunkowe bloki <code><b>catch</b></code>, każdy który trzyma określony typ wyjątku. W tym przypadku przywłaszcza odpowiedni warunek blok <code><b>catch</b></code> jest możliwy wstęp tylko kiedy wyjątek określa, który blok jest wyrzucony. Mozesz także opcjonalnie dla wszystkich bliżej nieokreślonych bloku wyjątków <code><b>catch-all catch</b></code> jako finalnego bloku w instrukcji bloku catch.</p>
+<p>Na przykład, nstępująca instrukcja powołuje się na trzy inne funkcje (deklarując je gdziekolwiek) który waliduje jego argumenty. Jeśli funkcja walidacji decyduje który komponent jest sprawdzany to wskazuje który nie przechodzi walidacji, to zwraca 0, wywołując odpowiednia wyskok szczególnego wątku.</p>
+<pre>function getCustInfo(name, id, email)
+{
+ var n, i, e;
+
+ if (!validate_name(name))
+ throw "InvalidNameException"
+ else
+ n = name;
+ if (!validate_id(id))
+ throw "InvalidIdException"
+ else
+ i = id;
+ if (!validate_email(email))
+ throw "InvalidEmailException"
+ else
+ e = email;
+ cust = (n + " " + i + " " + e);
+ return (cust);
+}
+</pre>
+<p>Blok warunkowy <code><b>catch</b></code> kontroluje drogę dobierając odpowiedni uchwyt wyjątku.</p>
+<pre>try {
+// funkcja wyrzucająca trzy wyjątki
+ getCustInfo("Lee", 1234, "lee@netscape.com")
+}
+
+catch (e if e == "InvalidNameException") {
+// nazwa uchwytu dla niepoprawnej nazwy
+ bad_name_handler(e)
+}
+
+catch (e if e == "InvalidIdException") {
+// nazwa uchwytu dla błędnych id
+ bad_id_handler(e)
+}
+
+catch (e if e == "InvalidEmailException") {
+// nazwa uchwytu dla błednego adresu email
+ bad_email_handler(e)
+}
+
+catch (e){
+// nie wiadomo co robi, ale się loguje
+ logError(e)
+}
+</pre>
+<h4 id="Blok_finally" name="Blok_finally">Blok <code><b>finally</b></code></h4>
+<p>Blok <code><b>finally</b></code> stanowi instrukcja wykonywana po sprawdzeniu i wykonaniu bloku <code><b>catch</b></code>, ale przed następującą instrukcją <code><b>try...catch</b></code>. Blok <code><b>finally</b></code> wykonany gdziekolwiek lub nie jest wyjątkiem <code><b>thrown</b></code>. Jeśli wyjątek jest <code><b>thrown</b></code>, instrukcje w bloku <code><b>finally</b></code> wykonane równo, jeśli blok <code><b>catch</b></code> trzyma wyjątek.</p>
+<p>Możesz używać bloku <code><b>finally</b></code> do zrobienia Twojego błędnego skryptu, kiedy ma miejsce wyjątku; na przykład, możesz potrzebować zwolnić źródło, którego Twój skrypt ma powiązanego. Następujący przykład otwiera plik i następnie wykonuje instrukcję, która użyje pliku (server-side pozwoli Ci w JavaScript uzyskać dostęp do pliku). Jeśli wyjątek jest rzucony, gdy plik jest otwarty, a blok <code><b>finally</b></code> zamyka pliki przed danymi skryptami.</p>
+<pre>openMyFile();
+try {
+ writeMyFile(theData)
+}
+finally {
+ closeMyFile() // zawsze zamykaj źródło
+}
+</pre>
+<h4 id="Zagnie.C5.BCd.C5.BCanie_instrukcji_try...catch" name="Zagnie.C5.BCd.C5.BCanie_instrukcji_try...catch">Zagnieżdżanie instrukcji <code><b>try...catch</b></code></h4>
+<p>Żądaj jeden lub więcej instrukcji <code><b>try...catch</b></code>. Jeśli wewnętrzna instrukcja <code><b>try...catch</b></code> nie ma bloku catch, otoczamy blok catch i instrukcja <code><b>try...catch</b></code> jest zaznaczona dla danej wartości.</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_break/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_break/index.html
new file mode 100644
index 0000000000..108f315058
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_break/index.html
@@ -0,0 +1,27 @@
+---
+title: Instrukcja break
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli/Instrukcja_break
+tags:
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Instrukcja_break" name="Instrukcja_break">Instrukcja <code>break</code></h3>
+<p>Użyjemy instrukcji <code><b>break</b></code> chcąc zakończyć jedną z instrukcji <code><b> pętli switch</b>, lub <b>label</b></code> .</p>
+<ul>
+ <li>Kiedy użyjemy <code><b>break</b></code> to przerwana zostanie natychmiast najgłębsza instrukcja <code><b>while, do-while, for,</b></code> lub <code><b>switch</b></code> i kontrola przekazana zostanie do następnej instrukcji.</li>
+ <li>Kiedy użyjemy <code><b>break</b></code> z etykietą, to przerwana zostanie specyficzna instrukcja o nazwie tej etykiety.</li>
+</ul>
+<p>Składnia instrukcji <code><b>break</b></code> wygląda jak poniższy przykład:</p>
+<pre>1. break
+2. break label
+</pre>
+<p>Pierwsza forma składni przerywa najgłębszą otoczoną nawiasami lub instrukcje pętlę <code><b>switch</b></code>; druga forma składni przerywa specjalnie pętlę zamkniętą i oznaczoną etykietę instrukcji.</p>
+<p><b>Przykład</b><br>
+ Następujący przykład powtarza pętle poprzez elementy w tablicy aż do momentu, znalezienia element indeksu, który jest wartością <code><b>theValue</b></code>:</p>
+<pre>for (i = 0; i &lt; a.length; i++) {
+ if (a[i] = theValue)
+ break;
+}
+</pre>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_continue/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_continue/index.html
new file mode 100644
index 0000000000..dee2eda4ee
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_continue/index.html
@@ -0,0 +1,51 @@
+---
+title: Instrukcja continue
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli/Instrukcja_continue
+tags:
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Instrukcja_continue" name="Instrukcja_continue">Instrukcja <code>continue</code></h3>
+<p>Instrukcja <code><b>continue</b></code> możemy użyć do ponownego uruchomienia instrukcji <code><b>while, do-while, for,</b></code> lub <code><b>label</b></code> tzw. etykiety.</p>
+<ul>
+ <li>Kiedy użyjemy instrukcji <code><b>continue</b></code> bez label, to zostanie przerwana aktualnie wykonywana iteracja najgłębszej instrukcji otoczonej kodem <code><b>while, do-while</b></code> lub <code><b>for</b></code>, która będzie kontynuowała wykonanie następnej pętli z iteracją. Przeciwieństwem jest instrukcja <code><b>break</b></code>, <code><b>continue</b></code> nie zostanie przerwane wykonywanie w całości. W pętli <code><b>while</b></code>, to kod zostanie zawrócony wg warunków określonych w kodzie. W pętli <code><b>for</b></code>, to wykona przyrost wyrażenia.</li>
+ <li>Kiedy użyjemy <code><b>continue</b></code> z <code><b>label</b></code>, to nakłada się do instrukcji pętli identyfikującej się z <code><b>label</b></code>.</li>
+</ul>
+<p>Składnia instrukcji <code><b>continue</b></code> wygląda następująco:</p>
+<ol>
+ <li><code><b>continue</b></code></li>
+ <li><code><b>continue label</b></code></li>
+</ol>
+<p><b>Przykład 1</b><br>
+ Następujący przykład pokazuje pętlę <code><b>while</b></code> z instrukcja <code><b>continue</b></code>, która jest wykonana wtedy, gdy wartość <code><b>i</b></code> jest liczbą trzy. W ten sposób, <code><b>n</b></code> pobiera wartości jeden, trzy, siedem, dwanaście.</p>
+<pre class="eval">i = 0;
+n = 0;
+while (i &lt; 5) {
+ i++;
+ if (i == 3)
+ continue;
+ n += i;
+}
+</pre>
+<p><b>Przykład 2</b><br>
+ Etykieta instrukcji <code><b>checkiandj</b></code> stanowi etykietę instrukcji <code><b>checkj</b></code>. Jeśli <code><b>continue</b></code> zostanie napotkane, program przerwie aktualnie wykonywaną iterację <code><b>checkj</b></code> i rozpocznie następną iterację. Za każdym razem, gdy <code><b>continue</b></code> zostanie napotkane, <code><b>checkj</b></code> wykonuje ponownie iterację aż do momentu, gdy warunek stanie się nieprawdziwy. Kiedy został napotkany nieprawdziwy warunek, to powtarza, reszta instrukcji <code><b>checkiandj</b></code> jest dopełniona, i <code><b>checkiandj</b></code> ponownie iteruje aż jego warunek zwróci wartość nieprawdziwą. Kiedy <b>false</b> jest zwracany, to program kontynuuje następującą instrukcję <code><b>checkiandj</b></code>.</p>
+<p>Jeśli <code><b>continue</b></code> miało pętlę <code><b>checkiandj</b></code>, to program będzie kontynuował instrukcję <code><b>checkiandj</b></code>, aż osiągnie jej najwyższą wartość.</p>
+<pre>checkiandj :
+ while (i &lt; 4) {
+ document.write(i + "&lt;br/&gt;");
+ i += 1;
+ checkj :
+ while (j &gt; 4) {
+ document.write(j + "&lt;br/&gt;");
+ j -= 1;
+ if ((j % 2) == 0)
+ continue checkj;
+ document.write(j + " is odd.&lt;br/&gt;");
+ }
+ document.write("i = " + i + "&lt;br/&gt;");
+ document.write("j = " + j + "&lt;br/&gt;");
+ }
+</pre>
+<p> </p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_do_...while/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_do_...while/index.html
new file mode 100644
index 0000000000..6c770f4ae6
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_do_...while/index.html
@@ -0,0 +1,23 @@
+---
+title: Instrukcja do ...while
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli/Instrukcja_do_...while
+tags:
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h4 id="Instrukcja_do...while" name="Instrukcja_do...while">Instrukcja <code>do...while</code></h4>
+<p>Instrukcja <code><b>do...while</b></code> powtarza specyficzny warunek, aż do momentu, kiedy uzna go za fałszywy. Instrukcja <code><b>do...while</b></code> wygląda następująco:</p>
+<pre class="eval">do
+ statement
+while (condition);
+</pre>
+<p>Instrukcja (<code><b>statement</b></code> zostanie wykonany raz, zanim warunek zostanie sprawdzony. Jeśli warunek (<code><b>condition</b></code>) jest prawdziwy (true), instrukcja zostanie wykonana ponownie. Warunek jest sprawdzany na końcu każdego wykonania. Kiedy warunek jest fałszywy (false), wykonanie zostaje zatrzymane i kontrola jest przekazywana do instrukcji następującej po pętli <code><b>do...while</b></code>.</p>
+<p><b>Przykład</b><br>
+ W następnym przykładzie, pętla iteracyjna wykonuje się, co najmniej raz, i powraca wykonując pętlę iteracyjną dopóki wartość i jest mniejsza niż 5.</p>
+<pre class="eval">do {
+ i += 1;
+ document.write(i);
+} while (i &lt; 5);
+</pre>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_for/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_for/index.html
new file mode 100644
index 0000000000..c13c4558fb
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_for/index.html
@@ -0,0 +1,56 @@
+---
+title: Instrukcja for
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli/Instrukcja_for
+tags:
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Instrukcja_for" name="Instrukcja_for">Instrukcja <code>for</code></h3>
+<p>Pętla <code><b>for</b></code> jest powtarzana aż do momentu, kiedy testowany warunek staje się fałszywy. W JavaScript pętla <code><b>for</b></code> jest podobna do pętli w Java i C. Instrukcja pętli <code><b>for</b></code> wygląda następująco:</p>
+<pre>for ([przypisanie]; [warunek]; [zmiana]) {
+ Instrukcje
+}
+</pre>
+<p>Kiedy pętla <code><b>for</b></code> jest wykonywana to mają miejsce:</p>
+<ol>
+ <li>Inicjalizacja wyrażenia <code><b>przypisanie</b></code>, jeśli coś jest wykonywane. To wyrażenie często inicjuje jedną lub więcej pętli, ale kod pozwala na wyrażenia o różnym stopniu złożoności. To wyrażenie może deklarować zmienne.</li>
+ <li>Wyrażenie <code><b>warunek</b></code> jest wykonane. Jeśli wartość <code><b>warunek</b></code> jest prawdziwa, instrukcja pętli jest wykonana. Jeśli wartość <code><b>warunek</b></code> jest fałszywa, pętla <code><b>for</b></code> jest przerwana. Jeśli wyrażenie <code><b>warunek</b></code> jest w całości opuszczone, warunek to bierze na siebie, jeśli jest prawdziwy.</li>
+ <li>Wykonuje <code><b>instrukcje</b></code>.</li>
+ <li>Aktualizuje wyrażenia <code><b>zmiana</b></code>, jeśli jedna wykonywana to kontrola jest przekazywana do kroku drugiego.</li>
+</ol>
+<p><b>Przykład</b><br>
+ Następująca funkcja stanowi instrukcję <code><b>for</b></code>, która to tworzy licznik zaznaczonych opcji w liście przewijanej (obiekt <b>Select</b>, który pozwala na wielokrotne zaznaczenia). Instrukcja <code><b>for</b></code> deklaruje zmienną <code><b>i</b></code> i inicjuje ją od zera. Sprawdza, które <code><b>i</b></code> jest mniejsze niż liczba opcji w obiekcie <code><b>Select</b></code> wykonując kolejną instrukcję <code><b>if</b></code>, i zwiększa <code><b>i</b></code> o jeden po każdej wykonanej pętli.</p>
+<pre>&lt;script type="text/javascript"&gt;//&lt;![CDATA[
+
+function howMany(selectObject) {
+ var numberSelected = 0;
+ for (var i = 0; i &lt; selectObject.options.length; i++) {
+ if (selectObject.options[i].selected)
+ numberSelected++;
+ }
+ return numberSelected;
+}
+
+//]]&gt;&lt;/script&gt;
+&lt;form name="selectForm"&gt;
+ &lt;p&gt;
+ &lt;strong&gt;Choose some music types, then click the button below:&lt;/strong&gt;
+ &lt;br/&gt;
+ &lt;select name="musicTypes" multiple="multiple"&gt;
+ &lt;option selected="selected"&gt;R&amp;B&lt;/option&gt;
+ &lt;option&gt;Jazz&lt;/option&gt;
+ &lt;option&gt;Blues&lt;/option&gt;
+ &lt;option&gt;New Age&lt;/option&gt;
+ &lt;option&gt;Classical&lt;/option&gt;
+ &lt;option&gt;Opera&lt;/option&gt;
+ &lt;/select&gt;
+ &lt;/p&gt;
+ &lt;p&gt;
+ &lt;input type="button" value="How many are selected?"
+ onclick="alert ('Number of options selected: ' + howMany(document.selectForm.musicTypes))"/&gt;
+ &lt;/p&gt;
+&lt;/form&gt;
+</pre>
+<p> </p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_label/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_label/index.html
new file mode 100644
index 0000000000..e95a452b8f
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_label/index.html
@@ -0,0 +1,23 @@
+---
+title: Instrukcja label
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli/Instrukcja_label
+tags:
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Instrukcja_label" name="Instrukcja_label">Instrukcja <code>label</code></h3>
+<p>Instrukcja <code><b>label</b></code> dostarcza instrukcję wraz z identyfikatorem, który odnosi się całkiem gdzie indziej w Twoim programie. Na przykład, możesz użyć <code><b>label</b></code> do zidentyfikowania pętli i następnie w niej użyć instrukcję <code><b>break</b></code> lub <code><b>continue</b></code>, do wskazania miejsca gdzie program powinien zinterpretować pętlę lub kontynuować jego wykonanie.</p>
+<p>Składnia instrukcji <code><b>label</b></code> wygląda następująco:</p>
+<pre>label :
+ Instrukcja
+</pre>
+<p>Wartością <code><b>label</b></code> może być w JavaScript identyfikator, który jest nie zarezerwowanym słowem. <code><b>Instrukcja</b></code> to identyfikujesz z etykietą, która może być jakąś instrukcją.</p>
+<p><b>Przykład</b><br>
+ W tym przykładzie, etykieta <code><b>markLoop</b></code> identyfikuje pętle while.</p>
+<pre>markLoop:
+while (theMark == true)
+ doSomething();
+}
+</pre>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_while/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_while/index.html
new file mode 100644
index 0000000000..48ecacaa70
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/instrukcje_pętli/instrukcja_while/index.html
@@ -0,0 +1,38 @@
+---
+title: Instrukcja while
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Instrukcje_pętli/Instrukcja_while
+tags:
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Instrukcja_while" name="Instrukcja_while">Instrukcja <code>while</code></h3>
+<p>Instrukcja <code><b>while</b></code> wykonuje instrukcje tak długo, dopóki warunek będzie prawdziwy. Instrukcja pętli <code><b>while</b></code> wygląda następująco:</p>
+<pre>while (warunek) {
+ instrukcje
+}
+</pre>
+<p>Jeśli warunek stanie się fałszywy, instrukcja wewnątrz pętli zatrzyma wykonywanie i identyfikatorach kontroli w instrukcji następującej pętli.</p>
+<p>Test warunku ma miejsce przed wykonaniem pętli instrukcji. Jeśli warunek będzie prawdziwy, instrukcje są wykonywane i ponownie jest wykonywany test warunku. Jeśli warunek będzie fałszywy, wykonywanie pętli jest zatrzymanie i przejście kontroli do następującej instrukcji <code><b>while</b></code>.</p>
+<p><b>Przykład 1</b><br>
+ Następująca pętla <code><b>while</b></code> wykonuje iterację (powtarza) tak długo aż <b>n</b> jest mniejsze od trzech:</p>
+<pre>n = 0;
+x = 0;
+while( n &lt; 3 ) {
+ n ++;
+ x += n;
+}
+</pre>
+<p>Do każdej wykonanej pętli iteracji, przyrost pętli <code><b>n</b></code> i dodanie te wartości <code><b>x</b></code>. Dlatego, <code><b>x</b></code> i <code><b>n</b></code> pobierają następujące wartości:</p>
+<ul>
+ <li>Po pierwszym przejściu: <code><b>n</b></code> = 1 i <code><b>x</b></code> = 1</li>
+ <li>Po drugim przejściu: <code><b>n</b></code> = 2 i <code><b>x</b></code> = 3</li>
+ <li>Po trzecim przejściu: <code><b>n</b></code> = 3 i <code><b>x</b></code> = 6</li>
+</ul>
+<p>Po uzupełnieniu trzeciego przejścia, warunek <code><b>n</b></code> &lt; 3 jest wartość prawdziwa, więc pętla zostanie przerwana.</p>
+<p><b>Przykład 2</b><br>
+ Nieskończoność pętli. Upewnij się czy warunek pętli ostatecznie staje się fałszywym; innym razem, pętla nigdy nie zostanie przerwana. Instrukcja w następującej pętli <code><b>while</b></code> występuje bezustannie, ponieważ warunek nigdy nie stanie się fałszywy.</p>
+<pre>while (true) {
+ alert("Hello, world") }
+</pre>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/o_tym_przewodniku/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/o_tym_przewodniku/index.html
new file mode 100644
index 0000000000..0fd0f2ec8a
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/o_tym_przewodniku/index.html
@@ -0,0 +1,159 @@
+---
+title: O tym przewodniku
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/O_tym_przewodniku
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Strony_wymagające_dopracowania
+ - Wszystkie_kategorie
+---
+<h3 id="Nowe_mo.C5.BCliwo.C5.9Bci_wersji_JavaScriptu" name="Nowe_mo.C5.BCliwo.C5.9Bci_wersji_JavaScriptu">Nowe możliwości wersji JavaScriptu</h3>
+
+<ul>
+ <li><a href="pl/Nowo%c5%9bci_w_JavaScript_1.5">Nowości w JavaScript 1.5</a></li>
+ <li><a href="pl/Nowo%c5%9bci_w_JavaScript_1.6">Nowości w JavaScript 1.6</a></li>
+ <li><a href="pl/Nowo%c5%9bci_w_JavaScript_1.7">Nowości w JavaScript 1.7</a></li>
+ <li><a href="pl/Nowo%c5%9bci_w_JavaScript_1.8">Nowości w JavaScript 1.8</a></li>
+</ul>
+
+<h3 id="Co_ju.C5.BC_powiniene.C5.9B_wiedzie.C4.87" name="Co_ju.C5.BC_powiniene.C5.9B_wiedzie.C4.87">Co już powinieneś wiedzieć</h3>
+
+<p>Ten dokument zakłada, że jego czytelnik ma podstawowe pojęcie na temat niżej wymienionych dziedzin:</p>
+
+<ul>
+ <li>ogólne rozumienie sieci Internet i WWW.</li>
+ <li>dobra praktyczna znajomość języka HTML (<a href="pl/HTML">HTML</a>).</li>
+</ul>
+
+<p>Przydatne, aczkolwiek nie wymagane, jest doświadczenie w językach programowania takich jak C czy Visual Basic.</p>
+
+<h3 id="Wersje_JavaScriptu" name="Wersje_JavaScriptu">Wersje JavaScriptu</h3>
+
+<p>Każda wersja przeglądarek Netscape Navigator, Mozilla i Mozilla Firefox obsługuje różne wersje języka JavaScript. Aby ułatwić pisanie skryptów zgodnych z różnymi wersjami przeglądarek Netscape/Mozilla/Firefox, w każdym rozdziale poświęconym danej możliwości języka podajemy listę wersji JavaScriptu obsługujących daną funkcjonalność.</p>
+
+<p>Poniższa tabela zawiera numery wersji JavaScriptu i odpowiadające im numery wersji przeglądarek te wersje obsługujących. Wersje Netscape Navigatora starsze niż 2.0 nie obsługują JavaScriptu.</p>
+
+<table class="fullwidth-table">
+ <tbody>
+ <tr>
+ <th>Wersja JavaScript</th>
+ <th>Wersja Navigatora</th>
+ </tr>
+ <tr>
+ <td>JavaScript 1.0</td>
+ <td>Navigator 2.0</td>
+ </tr>
+ <tr>
+ <td>JavaScript 1.1</td>
+ <td>Navigator 3.0</td>
+ </tr>
+ <tr>
+ <td>JavaScript 1.2</td>
+ <td>Navigator 4.0-4.05</td>
+ </tr>
+ <tr>
+ <td>JavaScript 1.3</td>
+ <td>Navigator 4.06-4.7x</td>
+ </tr>
+ <tr>
+ <td>JavaScript 1.4</td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td>JavaScript 1.5</td>
+ <td>Navigator 6.0<br>
+ Mozilla (przeglądarka open source)</td>
+ </tr>
+ <tr>
+ <td>JavaScript 1.6</td>
+ <td><a href="pl/Firefox_1.5">Firefox 1.5</a>, other Mozilla 1.8-based products</td>
+ </tr>
+ <tr>
+ <td>JavaScript 1.7</td>
+ <td><a href="pl/Firefox_2">Firefox 2</a>, other Mozilla 1.8.1-based products</td>
+ </tr>
+ <tr>
+ <td>JavaScript 1.8</td>
+ <td><a href="pl/Firefox_3">Firefox 3</a>, other Gecko 1.9-based products</td>
+ </tr>
+ </tbody>
+</table>
+
+<p><small><strong>Tablica 1: Wersje JavaScriptu oraz Navigatora</strong></small><br>
+  </p>
+
+<p>Każda wersja serwera Netscape Enterprise Server także obsługuje inną wersję JavaScriptu. Aby ułatwić pisanie skryptów zgodnych z różnymi wersjami Enterprise Server, w każdym rozdziale poświęconym danej możliwości języka podajemy wersję NES/FES, w której zaimplementowano daną funkcjonalność.</p>
+
+<table class="fullwidth-table">
+ <tbody>
+ <tr>
+ <th>Skrót</th>
+ <th>Wersja Enterprise Server</th>
+ </tr>
+ <tr>
+ <td>NES 2.0</td>
+ <td>Netscape Enterprise Server 2.0</td>
+ </tr>
+ <tr>
+ <td>NES 3.0</td>
+ <td>Netscape Enterprise Server 3.0</td>
+ </tr>
+ </tbody>
+</table>
+
+<p><small><strong>Tablica 2: Skróty oraz wersje Netscape Enterprise Server</strong></small></p>
+
+<h3 id="Gdzie_szuka.C4.87_informacji_o_JavaScripcie" name="Gdzie_szuka.C4.87_informacji_o_JavaScripcie">Gdzie szukać informacji o JavaScripcie</h3>
+
+<p>Na kompletną bazę informacji o języku JavaScript składają się następujące dokumenty:</p>
+
+<ul>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5">Przewodnik po języku JavaScript 1.5</a> (ten dokument) - dostarcza informacji na temat samego języka JavaScript i jego obiektów.</li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5">Dokumentacja języka JavaScript 1.5</a> - dostarcza informacji na temat języka JavaScript w formie encyklopedycznej</li>
+</ul>
+
+<p>Jeśli JavaScript stanowi dla Ciebie nowość, zacznij od <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5">Przewodnika po języku JavaScript 1.5</a>. Kiedy posiądziesz już podstawową wiedzę, możesz skorzystać z <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5">Dokumentacji języka JavaScript 1.5</a>, by szybko odnaleźć konkretne informacje na temat obiektów i poleceń.</p>
+
+<h3 id="Wskaz.C3.B3wki_do_nauki_JavaScript" name="Wskaz.C3.B3wki_do_nauki_JavaScript">Wskazówki do nauki JavaScript</h3>
+
+<p>Rozpoczęcie pracy z JavaScript jest proste: wszystko czego potrzebujecie to nowoczesna przeglądarka internetowa. Ten przewodnik zawiera elementy JavaScript, które są rozpoznawalne jedynie w ostatnich najnowszych wersji przeglądarki Firefox (lub w innych opartych na silniku Gecko przeglądarkach), dlatego zaleca się używanie jak najnowszej wersji przeglądarki Firefox.</p>
+
+<h4 id="Interaktywny_interpreter" name="Interaktywny_interpreter">Interaktywny interpreter</h4>
+
+<p>Do nauki języka zachęca wspaniały interpreter, który umożliwia pełną interaktywność bez zapisywania i odświeżania strony. Konsola błędów Firefox, dostępna w menu narzędzia, oferuje łatwy, interaktywny, sposób wykonywania skryptów JavaScript: po prostu wejdź na linię kodu oraz kliknij przycisk "Evaluate".</p>
+
+<p><img alt="Image:ErrorConsole.png"></p>
+
+<h4 id="Firebug" name="Firebug">Firebug</h4>
+
+<p>Bardziej zaawansowana interaktywna podpowiedź dostępna jest pod adresem: <a class="external" href="http://www.getfirebug.com/">Firebug</a>, trzecia część rozszerzenia Firefox. Firebug dostarcza zarówno zaawansowany kontroler DOM, jak i debuger JavaScript oraz przydatne narzędzia i różne inne programy użytkowe:</p>
+
+<p><img alt="Image:Firebug.png"></p>
+
+<p>jedno z najbardziej użytecznych ułatwień oferowanych przez Firebug w <code>console.log()</code>, funkcja która zapisuje jego argumenty do konsoli Firebug. W przeciwieństwie do innych języków programowania w JavaScript nie ma możliwości pisania na standardowym wyjściu. <code>console.log()</code> stanowi pożyteczną alternatywę obserwowania bardzo łatwo tego co twój program robi.</p>
+
+<p>Wiele przykładów w tym przewodniku używa <code>alert()</code> do zobaczenia komunikatów z ich wykonania. Jeśli masz zainstalowanego Firebug możesz użyć <code>console.log()</code> w miejsce <code>alert()</code> w czasie działania tych przykładów.</p>
+
+<h3 id="Konwencje_dokumentu" name="Konwencje_dokumentu">Konwencje dokumentu</h3>
+
+<p>Aplikacje JavaScript działają pod wieloma systemami operacyjnymi; informacje zawarte w tym przewodniku dotyczą ich wszystkich. Ścieżki plików i katalogów są podane w formacie Windows (z odwrotnym ukośnikiem oddzielającym nazwy folderów). Pod Uniksami ścieżki są te same, wystarczy jedynie zastąpić odwrotny ukośnik<em>\</em> zwykłym ukośnikiem<em>/</em> .</p>
+
+<p>Przewodnik ten używa uniform resource locators (adresów URL) w następującej formie:</p>
+
+<p><code><span class="nowiki">http://server.domain/path/file.html</span></code></p>
+
+<p>W tym adresie URL, "serwer" reprezentowany jest poprzez nazwę znajdującą się na serwerze w której uruchomisz aplikacje, także jako poszukiwane słowo lub strona WWW; "domena" reprezentowana jest poprzez twoją nazwę domeny w internecie, tak jak netscape.com lub uiuc.edu; "ścieżki" reprezentują strukturę katalogów na tym serwerze, a "file.html" reprezentuje indywidualną nazwę pliku. Generalnie pozycje, które mają w ścieżce kursywę, która jest osadzona i jest ona normalną czcionką literową. Jeśli twój serwer posiada Secure Sockets Layer (SSL), będziesz używał protokołu https zamiast http w adresie URL.</p>
+
+<p>Przewodnik ten stosuje z następującą konwencją czcionki:</p>
+
+<dl>
+ <dt>Czcionka <code>monospace</code></dt>
+ <dd>Jest użyta do prostych kodów oraz ich listingów, API i elementy języka (także jako metody i nazwy własności), nazwa pliku, nazwa ścieżki, nazwa katalogu, tagi HTML i jakiś tekst musi być zadeklarowany przy wyświetlaniu. (Kursywa czcionki Monospace jest użyta w osadzonych miejscach klasera w kodzie strony).</dd>
+ <dt>Kursywa </dt>
+ <dd>Jest użyta dla tytułów, nagłówków, zmiennych i specjalnych miejscach, i słów użytych w dosłownym znaczeniu.</dd>
+ <dt>Boldface </dt>
+ <dd>Typ używany do terminów słownikowych.</dd>
+</dl>
+
+<p>{{ PreviousNext("Przewodnik po języku JavaScript 1.5", "Przewodnik po języku JavaScript 1.5:Przegląd JavaScriptu") }}</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_array/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_array/index.html
new file mode 100644
index 0000000000..9befbd17cc
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_array/index.html
@@ -0,0 +1,94 @@
+---
+title: Obiekt Array
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Array
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Obiekt_Array" name="Obiekt_Array">Obiekt Array</h3>
+<p>JavaScript nie ma wyraźnych danych typu
+ <i>
+ array</i>
+ . Jednakże, możesz użyć predefiniowanego obiektu <code><b>Array</b></code> i jego metod do pracy z tabelami w twojej aplikacji. Obiekt <code><b>Array</b></code> posiada metody do manipulacji tablicami w zmiennych przypadkach, także jako łączyć, odwraca je na lewą stronę, i sortuje je. Decydując o długości
+ <i>
+ array</i>
+ i innych właściwości użytych w wyrażeniach regularnych.</p>
+<p>
+ <i>
+ array</i>
+ jest uporządkowane ustawienia wartości, które odsyłają do nazwy i indeksu. Na przykład, możesz mieć tablice nazwaną <code><b>emp</b></code>, która stanowi nazwę indeksu przez jego numer pracownika. Więc <code><b>emp{{ mediawiki.external(1) }}</b></code> będzie pracownik z numerem jeden, <code><b>emp{{ mediawiki.external(2) }}</b></code> pracownik z numerem dwa i tak dalej.</p>
+<h4 id="Tworzenie_tablicy" name="Tworzenie_tablicy">Tworzenie tablicy</h4>
+<p>Utwórz obiekt <code><b>Array</b></code>:</p>
+<pre>1. arrayObjectName = new Array(element0, element1, ..., elementN)
+2. arrayObjectName = new Array(arrayLength)
+</pre>
+<p><code><b>arrayObjectName</b></code> jest nazwą nowego obiektu lub właściwości istniejącego obiektu. Kiedy używamy właściwości i metody <code><b>Array</b></code>, <b>arrayObjectName</b> jest nazwą istniejącego obiektu <code><b>Array</b></code> lub właściwość istniejącego obiektu.</p>
+<p><code><b>element0, element1, ..., elementN</b></code> jest listą wartości dla elementów tablicowych. Kiedy ta forma określa, inicjowanie tablicy z określoną wartością jako jego elementy i właściwości długości tablicowej, która jest ustawiona jako liczby lub argumenty.</p>
+<p><code><b>arrayLength</b></code> jest inicjowanie długości w tablicy. Następujący kod tworzy tablice na pięć elementów:</p>
+<pre>billingMethod = new Array(5)
+</pre>
+<p>Literały Array sa także obiektami <code><b>Array</b></code>; na przykład, następujący literał jest obiektem <code><b>Array</b></code>. Zobacz <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Litera%c5%82y#Litera.C5.82y_tablicy">Literały tablicy</a> aby uzyskać więcej szczegółów.</p>
+<pre>coffees = ["French Roast", "Columbian", "Kona"]
+</pre>
+<h4 id="Zape.C5.82nienie_tablicy" name="Zape.C5.82nienie_tablicy">Zapełnienie tablicy</h4>
+<p>Możesz wypełnić tablicę przydzielonymi wartościami elementów. Na przykład,</p>
+<pre>emp[1] = "Casey Jones"
+emp[2] = "Phil Lesh"
+emp[3] = "August West"
+</pre>
+<p>Możesz także wypełnić tablicę jeśli utworzysz:</p>
+<pre>myArray = new Array("Hello", myVar, 3.14159)
+</pre>
+<h4 id="Kierowanie_do_elementu_tablicy" name="Kierowanie_do_elementu_tablicy">Kierowanie do elementu tablicy</h4>
+<p>Kierowanie do elementu tablicy używając przypisanie numeru odpowiedniemu elementowi. Na przykład, przypuśćmy, że zdefiniujesz następującą tablice:</p>
+<pre>myArray = new Array("Wiatr","Deszcz","Ogień")
+</pre>
+<p>Następnie kieruje się do pierwszego elementu tablicy jako <code><b>myArray{{ mediawiki.external(0) }}</b></code> i drugi element tablicy jako <code><b>myArray{{ mediawiki.external(1) }}</b></code>. Indeks elementów zaczyna się wraz z zerem (0), ale długość tablicy (na przykład, <code><b>myArray.length</b></code>) odzwierciedla numer elementów w tablicy.</p>
+<h4 id="Metody" name="Metody">Metody</h4>
+<p>Obiekt <code><strong>Array</strong></code> posiada następujące metody:</p>
+<ul>
+ <li><code><strong>concat</strong></code> dołącz dwie tablice i zwróć nową.</li>
+ <li><code><strong>join</strong></code> aby połączyć wszystkie elementy tablicy.</li>
+ <li><code><strong>pop</strong></code> usuń ostatni element z tablicy i zwróć ten element</li>
+ <li><code><strong>push</strong></code> dodaje jeden lub więcej elementów tablicy i zwraca, tego który jest ostatni dodany.</li>
+ <li><code><strong>reverse</strong></code> transportuje elementy tablicy; pierwszy element tablicy staje się ostatni i ostatni staje się pierwszym.</li>
+ <li><code><strong>shift</strong></code> usuń pierwszy element z tablicy i zwróć</li>
+ <li><code><strong>slice</strong></code> ekstrakty sekcji tablicy i zwraca nowa tablicę.</li>
+ <li><code><strong>splice</strong></code> dodaje i/lub usuwa elementy tablicy.</li>
+ <li><code><strong>sort</strong></code> sortowanie elementów w systemie.</li>
+ <li><code><strong>unshift</strong></code> dodaje jeden lub więcej elementów tablicy; tablica jest tworzona wraz z nowa długością length.</li>
+</ul>
+<p>Na przykład, przypuśćmy, że zdefiniujemy następującą tablice:</p>
+<pre>myArray = new Array("Wiatr","Deszcz","Ogień")
+</pre>
+<p><code><strong>myArray.join()</strong></code> zwraca "Wiatr","Deszcz","Ogień"; <code><strong>myArray.reverse</strong></code> transportuje tablicę więc, który <code><strong>myArray[0</strong>]</code> jest "Ogień", <code><strong>myArray{{ mediawiki.external(1) }}</strong></code> jest "Deszcz", i <code><strong>myArray{{ mediawiki.external(2) }}</strong></code> jest "Wiatr". <code><strong>myArray.sort</strong></code> sortuje tablicę więc, który <code><strong>myArray{{ mediawiki.external(0) }}</strong></code> jest "Ogień", <code><strong>myArray{{ mediawiki.external(1) }}</strong></code> jest "Deszcz", i <code><strong>myArray{{ mediawiki.external(2) }}</strong></code> jest "Wiatr".</p>
+<h4 id="Tablice_dwuwymiarowe" name="Tablice_dwuwymiarowe">Tablice dwuwymiarowe</h4>
+<p>Następujący kod tworzy tablicę dwuwymiarową.</p>
+<pre>a = new Array(4)
+for (i=0; i &lt; 4; i++) {
+ a[i] = new Array(4)
+ for (j=0; j &lt; 4; j++) {
+ a[i][j] = "["+i+","+j+"]"
+ }
+}
+</pre>
+<p>Ten przykład tworzy tablicę z następującymi wierszami:</p>
+<pre>Row 0:[0,0][0,1][0,2][0,3]
+Row 1:[1,0][1,1][1,2][1,3]
+Row 2:[2,0][2,1][2,2][2,3]
+Row 3:[3,0][3,1][3,2][3,3]
+</pre>
+<h4 id="Tablice_i_wyra.C5.BCenia_regularne" name="Tablice_i_wyra.C5.BCenia_regularne">Tablice i wyrażenia regularne</h4>
+<p>Kiedy
+ <i>
+ array</i>
+ jest rezultatem pomiędzy wyrażeniami regularnymi i łańcucha,
+ <i>
+ array</i>
+ zwraca właściwości i elementy, które dostarczają informacji o odpowiedniku. Wartość
+ <i>
+ array</i>
+ jest zwracany <code><b>RegExp.exec</b></code>, <code><b>String.match</b></code>, i <code><b>String.split</b></code>. Dla uzyskania informacji, jak używać tablicę z wyrażeniami regularnymi <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5#Wyra.C5.BCenia_regularne">Wyrażenia regularne</a>.</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_boolean/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_boolean/index.html
new file mode 100644
index 0000000000..ff6e5b774a
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_boolean/index.html
@@ -0,0 +1,14 @@
+---
+title: Obiekt Boolean
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Boolean
+tags:
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Obiekt_Boolean" name="Obiekt_Boolean">Obiekt Boolean</h3>
+<p>Obiekt <code><b>Boolean</b></code> jest otoczeniem wokół prymitywnych danych typu Boolean. Użyj następującej składni do utworzenia obiektu <code><b>Boolean</b></code>:</p>
+<pre>booleanObjectName = new Boolean(wartość)
+</pre>
+<p>Nie pomieszaj prymitywnej wartości Boolean <code><b>true</b></code> i <code><b>false</b></code> z wartościami <b>true</b> i <b>false</b> obiektu <code><b>Boolean</b></code>. Jakikolwiek obiekt którego wartość obiektu jest nie <code><b>undefined</b></code> , <code><b>null</b></code>, <code><b>0</b></code>, <code><b>NaN</b></code>, lub pusty łańcuch, włączając obiekt <code><b>Boolean</b></code>, którego wartość jest nieprawdziwa (false), ocenia jako prawdziwy (true), kiedy przechodzi do instrukcji warunkowej. Zobacz artykuł <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Instrukcje_warunkowe#Instrukcja_if...else">Instrukcja if...else</a> aby zdobyć więcej informacji.</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_date/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_date/index.html
new file mode 100644
index 0000000000..e0dc4845d8
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_date/index.html
@@ -0,0 +1,87 @@
+---
+title: Obiekt Date
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Date
+tags:
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Obiekt_Date" name="Obiekt_Date">Obiekt Date</h3>
+<p>JavaScript nie posiada danych typu date. Jednakże, możesz użyć obiektu <code><b>Date</b></code> i jego metod do pracy z datami i czasem w swoich aplikacjach. Obiekt <code><b>Date</b></code> posiada wiele metod do ustawiania, pobierania i manipulacji datami. Nie posiada żadnych właściwości.</p>
+<p>W JavaScript uchwyty dat są podobne jak w Java. Oba języki mają wiele takich samych metod i oba języki przechowują daty w liczbie milisekund od 1-ego stycznia 1970, 00:00:00.</p>
+<p>Obiekt Date jest z zakresu -100,000,000 dni do 100,000,000 dni odnosząc się do 01 stycznia, 1970 UTC.</p>
+<p>Do utworzenia obiektu <code><b>Date</b></code> służy:</p>
+<pre>dateObjectName = new Date([parameters])
+</pre>
+<p>gdzie: <code><b>dateObjectName</b></code> jest nazwą tworzonego obiektu; <code><b>Date</b></code> potrafi też być nowym obiektem lub właściwością już istniejącego obiektu.</p>
+<p>W poprzedniej składni <code><b>parameters</b></code> mogły być:</p>
+<ul>
+ <li>Niczym: tworzyć dzisiejszą datę i czas. Na przykład: <code><b>today = new Date()</b></code>.</li>
+ <li>Łańcuchem reprezentującym datę w następujących formach: "Month day, year hours:minutes:seconds." Na przykład:, <code><b>Xmas95 = new Date("December 25, 1995 13:30:00")</b></code>. Jeśli opuszczasz godziny, minuty lub sekundy to wartość ich będzie ustawiona na zero.</li>
+ <li>Ustawienia wartości liczby całkowitej dla roku, miesiąca i dnia. Na przykład, <code><b>Xmas95 = new Date(1995,11,25)</b></code>. Ustawienia wartości dla roku, miesiąca, dnia, godziny, minuty, sekund. Na przykład: <code><b>Xmas95 = new Date(1995,11,25,9,30,0)</b></code>.</li>
+</ul>
+<p><b>JavaScript 1.2 i wcześniejsze</b><br>
+ Obiekt <code><b>Date</b></code> postępuje następująco:</p>
+<ul>
+ <li>Daty z przed roku 1970 nie są uznawane.</li>
+ <li>Data w JavaScript zależy od dostępności i zachowania rodzaju platformy; zachowanie platform obiektu <code><b>Date</b></code> różnią się pomiędzy sobą.</li>
+</ul>
+<h4 id="Metody_obiektu_Date" name="Metody_obiektu_Date">Metody obiektu Date</h4>
+<p>Metody obiektu <code><b>Date</b></code> są do obsługi daty i czasu zawartego w tych obszernych kategoriach:</p>
+<ul>
+ <li>metody "<code><b>set</b></code>", służy do ustawienia wartości daty i czasu w obiektach <code><b>Date</b></code>.</li>
+ <li>metody "<code><b>get</b></code>", służą do pobrania wartości daty i czasu w obiektach <code><b>Date</b></code>.</li>
+ <li>metody "<code><b>to</b></code>", służy do powtórzenia łańcuchów wartości z obiektów <code><b>Date</b></code>.</li>
+ <li>parsowanie i metody UTC, służą do analizy składniowej łańcuchów <code><b>Date</b></code>.</li>
+</ul>
+<p>Z metodami "<code><b>get</b></code>" i "<code><b>set</b></code>" możemy pobrać i ustawić sekundy, minuty, godziny, dni miesiąca, dni tygodnia, miesiące, jak i poszczególne lata. Istnieje metoda <code><b>getDay</b></code>, która zwraca dzień tygodnia, ale nie współpracuje z metodą <code><b>setDay</b></code>, ponieważ dzień tygodnia jest ustawiany automatycznie. Te metody używają liczb całkowitych do reprezentacji następujących wartości:</p>
+<ul>
+ <li>Sekund /i minut: 0 do 59</li>
+ <li>Godziny: 0 do 23</li>
+ <li>Dzień: 0 (Niedziela) do 6 (Sobota)</li>
+ <li>Data: 1 do 31 (dzień miesiąca)</li>
+ <li>Miesiące: 0 (Styczeń) do 11 (Grudzień)</li>
+ <li>Lata: lata od 1900</li>
+</ul>
+<p>Na przykład, przypuśćmy, że zdefiniowałeś następującą datę:</p>
+<pre>Xmas95 = new Date("December 25, 1995")
+</pre>
+<p>Następnie <code><b>Xmas95.getMonth()</b></code> zwraca 11, i <code><b>Xmas95.getFullYear()</b></code> zwraca 1995.</p>
+<p>Metody <code><b>getTime</b></code> i <code><b>setTime</b></code> są użyteczne dla porównania dat. Metoda <code><b>getTime</b></code> zwraca liczbę milisekund od 1 stycznia 1970, 00:00:00 (
+ <i>
+ January 1, 1970, 00:00:00</i>
+ ) dla obiektu <code><b>Date</b></code>.</p>
+<p>Na przykład, następujący kod wyświetla liczbę dni opuszczonych w aktualnym roku:</p>
+<pre>today = new Date()
+endYear = new Date(1995,11,31,23,59,59,999) // Ustawia dni i miesiące
+endYear.setFullYear(today.getFullYear()) // Ustawia ilość lat '''(?)'''
+msPerDay = 24 * 60 * 60 * 1000 // Liczba milisekund na dzień
+daysLeft = (endYear.getTime() - today.getTime()) / msPerDay
+daysLeft = Math.round(daysLeft) //zwraca dni opuszczone dni w roku
+</pre>
+<p>Ten przykład stworzył obiekt <code><b>Date</b></code> nazywany <b>today</b>, który stanowi dzisiejszą datę. Następnie utworzył obiekt <code><b>Date</b></code> nazwany <code><b>endYear</b></code> i ustawi się od roku do aktualnego roku. Następnie, użyje liczbę milisekund na dzień, to obliczy liczbę dni pomiędzy dzisiejszym dniem <b>today</b> a <code><b>endYear</b></code>, używających <code><b>getTime</b></code> i zaokrąglenie do liczby dni.</p>
+<p>Metoda <code><b>parse</b></code> jest użyteczna dla przydzielania wartości z łańcucha daty do wykorzystania przez obiekty <code><b>Date</b></code>. Na przykład, następujący kod używa <code><b>parse</b></code> i <code><b>setTime</b></code> do przydzielenia wartości obiektu <code><b>IPOdate</b></code>:</p>
+<pre>IPOdate = new Date()
+IPOdate.setTime(Date.parse("Aug 9, 1995"))
+</pre>
+<h4 id="U.C5.BCywanie_obiektu_Date:_Przyk.C5.82ad" name="U.C5.BCywanie_obiektu_Date:_Przyk.C5.82ad">Używanie obiektu Date: Przykład</h4>
+<p>W następującym przykładzie, funkcja <code><b>JSClock()</b></code> zwraca czas w formacie zegara cyfrowego.</p>
+<pre>function JSClock() {
+ var time = new Date()
+ var hour = time.getHours()
+ var minute = time.getMinutes()
+ var second = time.getSeconds()
+ var temp = "" + ((hour &gt; 12) ? hour - 12 : hour)
+ if (hour == 0)
+ temp = "12";
+ temp += ((minute &lt; 10) ? ":0" : ":") + minute
+ temp += ((second &lt; 10) ? ":0" : ":") + second
+ temp += (hour &gt;= 12) ? " P.M." : " A.M."
+ return temp
+}
+</pre>
+<p>Pierwsza funkcja <code><b>JSClock</b></code> tworzy nowy obiekt <code><b>Date</b></code>, który nazywany jest <code><b>time</b></code>; nie dający argumentów, czas jest tworzony z aktualną datą i czasem. Następnie metody <code><b>getHours</b></code>, <code><b>getMinutes</b></code>, i <code><b>getSeconds</b></code> przypisują wartości aktualnej godziny, minuty i sekundy do <code><b>hour</b></code>, <code><b>minute</b></code>, i <code><b>second</b></code>.</p>
+<p>Następne cztery linijki instrukcji budują łańcuch wartości oparty na czasie. Pierwsza instrukcja tworzy zmienne <code><b>temp</b></code>, przydzielając jej wartość używanego warunku wyrażenia; jeśli <code><b>hour</b></code> jest wyższa niż 12, (godzina - 12), w innym przypadku prosta godzina, chyba że jest godzina 0, która to staje się 12.</p>
+<p>Następna instrukcja przypisuje wartość <code><b>minute</b></code> do temp. Jeśli wartość <code><b>minute</b></code> jest mniejsza niż 10, wyrażenie warunkowe dodaje łańcuch z poprzedzającym ją zerem; w innym przypadku dodaje rozgraniczający dwukropek. Następnie instrukcja dołącza sekundy do temp w ten sam sposób.</p>
+<p>Kończąc, wyrażenie warunkowe dołącza "<code><b>PM</b></code>" do temp, jeśli <code><b>hour</b></code> posiada wartość 12 lub wyższą; w innym przypadku, to dołącza "<code><b>AM</b></code>" do <code><b>temp</b></code>.</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_function/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_function/index.html
new file mode 100644
index 0000000000..02eef23d82
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_function/index.html
@@ -0,0 +1,50 @@
+---
+title: Obiekt function
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_function
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Obiekt_Function" name="Obiekt_Function">Obiekt Function</h3>
+<p>Predefiniowany obiekt <code>Function</code> określa łańcuch znaków do skompilowania jako funkcja.</p>
+<p>Aby utworzyć obiekt <code>Function</code>:</p>
+<pre>nazwaObiektuFunkcji = new Function ([arg1, arg2, ... argn], cialoFunkcji)
+</pre>
+<p><code>nazwaObiektuFunkcji</code> jest nazwą zmiennej lub własności istniejącego obiektu. Może to być również obiekt, po którym następuje zapisana małymi literami nazwa uchwytu zdarzenia, jak np. <code>window.onerror</code>.</p>
+<p><code>arg1</code>, <code>arg2</code>, ... <code>argn</code> są argumentami, które mają być użyte przez funkcję jako formalne nazwy argumentów. Każda z nich musi być łańcuchem znaków spełniającym zasady poprawnego identyfikatora JavaScript; przykładowo "x" lub "theForm".</p>
+<p><code>cialoFunkcji</code> jest łańcuchem znaków określającym kod JavaScript, który ma zostać skompilowany jako ciało funkcji.</p>
+<p>Obiekty <code>Function</code> są przetwarzane przy każdym użyciu. Jest to mniej skutecznie niż deklarowanie funkcji i wywoływanie jej wewnątrz kodu, ponieważ zadeklarowane funkcje są kompilowane.</p>
+<p>Oprócz definiowania funkcji w sposób opisany tutaj, możesz również użyć instrukcji <code>function</code> i wyrażenia funkcji. Zobacz <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5">Dokumentacja języka JavaScript 1.5</a>, aby uzyskać więcej informacji.</p>
+<p>Poniższy kod przypisuje funkcję do zmiennej <code>ustawKolorTla</code>. Funkcja ta ustawia obecny kolor tła dokumentu.</p>
+<pre>var ustawKolorTla = new Function("document.bgColor='antiquewhite'")
+</pre>
+<p>Aby wywołać obiekt <code>Function</code>, możesz określić nazwę zmiennej tak, jak gdyby była to funkcja. Poniższy kod wykonuje funkcję określoną przez zmienną <code>ustawKolorTla</code>:</p>
+<pre>var wyborKoloru="antiquewhite"
+if (wyborKoloru=="antiquewhite") {ustawKolorTla()}
+</pre>
+<p>Możesz przypisać funkcję do uchwytu zdarzenia w jeden z następujących sposobów:</p>
+<pre>1. document.form1.colorButton.onclick=ustawKolorTla
+2. &lt;INPUT NAME="kolorPrzycisku" TYPE="button"
+ VALUE="Zmień kolor tła"
+ onClick="ustawKolorTla()"&gt;
+</pre>
+<p>Tworzenie zmiennej <code>ustawKolorTla</code> pokazane powyżej jest podobne do deklarowania następującej funkcji:</p>
+<pre>function ustawKolorTla() {
+ document.bgColor='antiquewhite'
+}
+</pre>
+<p>Przypisywanie funkcji do zmiennej jest podobne do deklarowania funkcji, są jednak pewne różnice:</p>
+<ul>
+ <li>Gdy przypisujesz funkcję do zmiennej używając var <code>ustawKolorTla = new Function("...")</code>, <code>ustawKolorTla</code> jest zmienną, dla której obecnej wartość jest odniesieniem do funkcji stworzonej za pomocą new <code>Function()</code>.</li>
+ <li>Gdy tworzysz funkcję używając <code>function ustawKolorTla() {...}</code>, <code>ustawKolorTla</code> nie jest zmienną, ale nazwą funkcji.</li>
+</ul>
+<p>Możesz zagnieździć funkcję wewnątrz funkcji. Zagnieżdżona (wewnętrzna) funkcja jest prywatna do zawierającej ją (zewnętrznej) funkcji:</p>
+<ul>
+ <li>Dostęp do wewnętrznej funkcji może być osiągnięty tylko przez instrukcje w funkcji zewnętrznej.</li>
+ <li>Funkcja wewnętrzna może używać tych samych argumentów i zmiennych, co funkcja zewnątrzna. Funkcja zewnętrzna nie może używać argumentów i zmiennych funkcji wewnętrznej.</li>
+</ul>
+<div class="noinclude">
+  </div>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_math/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_math/index.html
new file mode 100644
index 0000000000..b09ad2f801
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_math/index.html
@@ -0,0 +1,72 @@
+---
+title: Obiekt Math
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Math
+tags:
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Obiekt_Math" name="Obiekt_Math">Obiekt Math</h3>
+<p>Obiekt predefiniowany <code><b>Math</b></code> posiada właściwości i metody dla stałych matematycznych i funkcji. Na przykład: obiekt <code><b>Math</b></code> <code><b>PI</b></code> pi posiada wartość (3.141...), który będzie używany w aplikacji jako:</p>
+<pre>Math.PI
+</pre>
+<p>Podobnie, standardowe funkcje matematyczne są metodami Math. Włączając trygonometryczne, logarytmiczne, wykładnicze i inne funkcje. Na przykład, jeśli chcesz użyć funkcji trygonometryczej <b>sine</b>, musisz napisać:</p>
+<pre>Math.sin(1.56)
+</pre>
+<p>Wszystkie metody trygonometryczne <code><b>Math</b></code> pobierają argumenty w radianach.</p>
+<p>Następująca tabela podsumowuje metodę <code><b>Math</b></code>.</p>
+<table class="fullwidth-table">
+ <tbody>
+ <tr>
+ <th>Metoda</th>
+ <th>Opis</th>
+ </tr>
+ <tr>
+ <td><b>abs</b></td>
+ <td>Wartość bezwzględna argumentu</td>
+ </tr>
+ <tr>
+ <td><b>sin, cos, tan</b></td>
+ <td>Standardowe funkcje trygonometryczne; argumenty w radianach</td>
+ </tr>
+ <tr>
+ <td><b>acos, asin, atan, atan2</b></td>
+ <td>Odwrotne funkcje trygonometryczne; zwracają wartość w radianach</td>
+ </tr>
+ <tr>
+ <td><b>exp, log</b></td>
+ <td>Wykładniczy i naturalny logarytm, podstawą jest <sub><b>e</b></sub></td>
+ </tr>
+ <tr>
+ <td><b>ceil</b></td>
+ <td>Zwraca najmniejszą liczbę całkowitą większą bądź równą argumentowi</td>
+ </tr>
+ <tr>
+ <td><b>floor</b></td>
+ <td>Zwraca największą liczbę całkowitą mniejszą bądź równą argumentowi</td>
+ </tr>
+ <tr>
+ <td><b>min, max</b></td>
+ <td>Zwraca większą lub mniejeszą (jedną z podanych) z dwóch argumentów</td>
+ </tr>
+ <tr>
+ <td><b>pow</b></td>
+ <td>Wykładniczy; pierwszy argument jest podstawą, drugi jest wykładnikiem</td>
+ </tr>
+ <tr>
+ <td><b>random</b></td>
+ <td>Zwraca przypadkową liczbę pomiędzy 0 i 1.</td>
+ </tr>
+ <tr>
+ <td><b>round</b></td>
+ <td>Zwraca argumenty najbliższe liczbie całkowitej</td>
+ </tr>
+ <tr>
+ <td><b>sqrt</b></td>
+ <td>Zwraca pierwiastek kwadratowy argumentu</td>
+ </tr>
+ </tbody>
+</table>
+<p><small><b>Tabela: Metody Math</b></small></p>
+<p>Wiele innych niepodobnych obiektów, nigdy nie utworzy dla siebie obiektu <code><b>Math</b></code>. Zawsze używaj predefiniowanego obiektu <code><b>Math</b></code>.</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_number/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_number/index.html
new file mode 100644
index 0000000000..d66696774b
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_number/index.html
@@ -0,0 +1,83 @@
+---
+title: Obiekt Number
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_Number
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Obiekt_Number" name="Obiekt_Number">Obiekt Number</h3>
+<p>Obiekt <code><b>Number</b></code> posiada własności dla stałych liczbowych, takie jak wartość maksymalna, not-a-number (nie-liczba) i nieskończoność. Nie możesz zmieniać wartości tych własności. Używa się ich następująco:</p>
+<pre>biggestNum = Number.MAX_VALUE
+smallestNum = Number.MIN_VALUE
+infiniteNum = Number.POSITIVE_INFINITY
+negInfiniteNum = Number.NEGATIVE_INFINITY
+notANum = Number.NaN
+</pre>
+<p>Możesz zawsze odwołać się do własności predefiniowanego obiektu <code>Number</code> w sposób pokazany powyżej, lecz nie jako własności obiektu <code>Number</code>, który sam utworzyłeś.</p>
+<p>Poniższa tabela podsumowuje własności obiektu <code><b>Number</b></code> .</p>
+<table class="fullwidth-table">
+ <tbody>
+ <tr>
+ <th>Własność</th>
+ <th>Opis</th>
+ </tr>
+ <tr>
+ <td><b>MAX_VALUE</b></td>
+ <td>Największa możliwa do przedstawienia liczba</td>
+ </tr>
+ <tr>
+ <td><b>MIN_VALUE</b></td>
+ <td>Najmniejsza możliwa do przedstawienia liczba</td>
+ </tr>
+ <tr>
+ <td><b>NaN</b></td>
+ <td>Specjalna wartość "nieliczbowa"</td>
+ </tr>
+ <tr>
+ <td><b>NEGATIVE_INFINITY</b></td>
+ <td>Specjalna wartość nieskończoności; zwracana przy przepełnieniu</td>
+ </tr>
+ <tr>
+ <td><b>POSITIVE_INFINITY</b></td>
+ <td>Specjalna wartość ujemnej nieskończoności; zwracana przy przepełnieniu</td>
+ </tr>
+ </tbody>
+</table>
+<p><small><b>Tabela 7.2: Własności obiektu Number</b></small></p>
+<p>Prototyp Number dostarcza metod używanych w celu uzyskiwania w różnych formatach informacji z obiektów Number. Poniższa tabelka podsumowuje metody <code>Number.prototype</code>.</p>
+<table class="fullwidth-table">
+ <tbody>
+ <tr>
+ <th>Metoda</th>
+ <th>Opis</th>
+ </tr>
+ <tr>
+ <td><b>toExponential</b></td>
+ <td>Zwraca łańcuch znaków reprezentujący liczbę w notacji wykładniczej.</td>
+ </tr>
+ <tr>
+ <td><b>toFixed</b></td>
+ <td>Zwraca łańcuch znaków reprezentujący liczbę w notacji stałoprzecinkowej.</td>
+ </tr>
+ <tr>
+ <td><b>toPrecision</b></td>
+ <td>Zwraca łańcuch znaków reprezentujący z określoną dokładnością w notacji stałoprzecinkowej.</td>
+ </tr>
+ <tr>
+ <td><b>toSource</b></td>
+ <td>Zwraca obiekt literałowy reprezentujący określony obiekt Number; możesz użyć tej wartości do stworzenia nowego obiektu. Nadpisuje metodę Object.toSource.</td>
+ </tr>
+ <tr>
+ <td><b>toString</b></td>
+ <td>Zwraca łańcuch znaków reprezentujący dany obiekt. Nadpisuje metodę Object.toString.</td>
+ </tr>
+ <tr>
+ <td><b>valueOf</b></td>
+ <td>Zwraca pierwotną wartość określonego obiektu. Nadpisuje metodę Object.valueOf.</td>
+ </tr>
+ </tbody>
+</table>
+<p><small><b>Tabela: Metody Number.prototype</b></small> {{ PreviousNext("Przewodnik po języku JavaScript 1.5:Obiekty predefiniowane:Obiekt Math", "Przewodnik po języku JavaScript 1.5:Obiekty predefiniowane:Obiekt RegExp") }}</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_regexp/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_regexp/index.html
new file mode 100644
index 0000000000..120abc3cb9
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_regexp/index.html
@@ -0,0 +1,12 @@
+---
+title: Obiekt RegExp
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_RegExp
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Obiekt_RegExp" name="Obiekt_RegExp">Obiekt RegExp</h3>
+<p>Obiekt <code><b>RegExp</b></code> umożliwia działanie na wyrażeniach regularnych. Został on opisany w Rozdziale 4, <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5#Wyra.C5.BCenia_regularne">Wyrażenia regularne</a>. {{ PreviousNext("Przewodnik po języku JavaScript 1.5:Obiekty predefiniowane:Obiekt Number", "Przewodnik po języku JavaScript 1.5:Obiekty predefiniowane:Obiekt String") }}</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_string/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_string/index.html
new file mode 100644
index 0000000000..dc7aa33326
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/obiekty_predefiniowane/obiekt_string/index.html
@@ -0,0 +1,92 @@
+---
+title: Obiekt String
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Obiekty_predefiniowane/Obiekt_String
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Obiekt_String" name="Obiekt_String">Obiekt String</h3>
+<p>Obiekt <code>String</code> ma jedną własność, <code>length</code>, która wskazuje liczbę znaków w łańcuchu znaków. Przykładowo, poniższy kod przypisuje zmiennej <code>x</code> wartość 13, ponieważ "Hello, World!" ma 13 znaków:</p>
+<pre>myString = "Hello, World!"
+x = mystring.length
+</pre>
+<p>Obiekt <code>String</code> posiada dwa typy metod: zwracające zmienność samego łańcucha znaków, takie jak <code>substring</code> i <code>toUpperCase</code> oraz te, które zwracają wersję łańcucha sformatowaną jako kod HTML, takie jak <code>bold</code> i <code>link</code>.</p>
+<p>Na przykład używając poprzedniego przykładu, zarówno <code>mystring.toUpperCase()</code> jak i <code>"hello, world!".toUpperCase()</code> zwrócą łańcuch "HELLO, WORLD!"</p>
+<p>Metoda <code>substring</code> pobiera dwa argumenty i zwraca podzbiór łańcucha znaków pomiędzy tymi dwoma argumentami. Posługując się powyższym przykładem, mystring.substring(4, 9) zwróci łańcuch "o, Wo". Zobacz metodę <code>substring</code> obiektu String w <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5">Dokumentacja języka JavaScript 1.5</a>, aby uzyskać więcej informacji.</p>
+<p>Obiekt <code>String</code> posiada również wiele metod do automatycznego formatowania kodu HTML, takie jak <code>bold</code> do tworzenia pogrubionego tekstu i <code>link</code> do tworzenia hiperłącz. Przykładowo, możesz utworzyć hiperłącze do hipotetycznego adresu URL przy użyciu metody <code>link</code> w następujący sposób:</p>
+<pre>mystring.link("http://www.helloworld.com")
+</pre>
+<p>Poniższe tabela podsumowuje metody obiektu <code>String</code>.</p>
+<table class="fullwidth-table">
+ <tbody>
+ <tr>
+ <th>Metody</th>
+ <th>Opis</th>
+ </tr>
+ <tr>
+ <td><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/anchor">anchor</a></td>
+ <td>Tworzy nazwaną kotwicę HTML.</td>
+ </tr>
+ <tr>
+ <td><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/big">big</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/blink">blink</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/bold">bold</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/fixed">fixed</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/italics">italics</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/small">small</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/strike">strike</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/sub">sub</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/sup">sup</a></td>
+ <td>Tworzy w HTML sformatowany łańcuch znaków.</td>
+ </tr>
+ <tr>
+ <td><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/charAt">charAt</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/charCodeAt">charCodeAt</a></td>
+ <td>Zwraca znak lub kod znaku znajdującego się na określonej pozycji łańcucha znaków.</td>
+ </tr>
+ <tr>
+ <td><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/indexOf">indexOf</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/lastIndexOf">lastIndexOf</a></td>
+ <td>Zwraca odpowiednio pozycję określonego podciągu w łańcuchu znaków lub ostatnią pozycję określonego podciągu.</td>
+ </tr>
+ <tr>
+ <td><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/link">link</a></td>
+ <td>Tworzy odnośnik HTML.</td>
+ </tr>
+ <tr>
+ <td><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/concat">concat</a></td>
+ <td>Łączy tekst z dwóch łańcuchów i zwraca nowy łańcuch znaków.</td>
+ </tr>
+ <tr>
+ <td><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/fromCharCode">fromCharCode</a></td>
+ <td>Buduje łańcuch znaków z określonej sekwencji wartości Unicode. Jest metoda klasy String, a nie instancji String.</td>
+ </tr>
+ <tr>
+ <td><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/split">split</a></td>
+ <td>Dzieli obiekt String na tablicę łańcuchów poprzez rozdzielenie łańcucha znaków na podciągi.</td>
+ </tr>
+ <tr>
+ <td><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/slice">slice</a></td>
+ <td>Wycina fragment łańcucha znaków i zwraca nowy łańcuch.</td>
+ </tr>
+ <tr>
+ <td><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/substring">substring</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/substr">substr</a></td>
+ <td>Zwraca określony podciąg łańcucha znaków, poprzez określenie indeksów początkowych i końcowych lub też określenie indeksu początkowego i długości.</td>
+ </tr>
+ <tr>
+ <td><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/match">match</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/replace">replace</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/search">search</a></td>
+ <td>Pracuje z wyrażeniami regularnymi.</td>
+ </tr>
+ <tr>
+ <td><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/toLowerCase">toLowerCase</a>, <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/toUpperCase">toUpperCase</a></td>
+ <td>Zwraca łańcuch znaków odpowiednio z wszystkimi małymi lub wszystkimi dużymi znakami.</td>
+ </tr>
+ </tbody>
+</table>
+<p><small><b>Tabela 7.4: Metody instancji String</b></small></p>
+<h3 id="Litera.C5.82y_znakowe_nie_s.C4.85_obiektami_String" name="Litera.C5.82y_znakowe_nie_s.C4.85_obiektami_String">Literały znakowe nie są obiektami String</h3>
+<p>Obiekt <code>String</code> jest obiektem opakowującym wokół pierwotnego typu danych łańcuchu znaków. Nie myl literału znakowego z obiektem <code>String</code>. Na przykład poniższy kod tworzy literał <code>s1</code>, jak również obiekt String <code>s2</code>:</p>
+<pre>s1 = "foo" //tworzy wartość literału znakowego
+s2 = new String("foo") //tworzy obiekt String
+</pre>
+<p>Możesz wywołać dowolną metodę obiektu String na wartości literału znakowego - JavaScript automatycznie skonwertuje literał znakowy do tymczasowego obiektu <code>String</code>, wywoła metodę, a następnie pozbędzie się tymczasowego obiektu <code>String</code>. Możesz również użyć własności <code>String.length</code> z literałem znakowym. Możesz również użyć własności <code>String.length</code> z literałem znakowym.</p>
+<p>Powinieneś użyć literału znakowego, chyba że potrzebujesz szczególnie obiektu String, ponieważ obiekty <code>String</code> mogą zachowywać się nieintuicyjnie. Przykładowo:</p>
+<pre>s1 = "2 + 2" //tworzy wartość literału znakowego
+s2 = new String("2 + 2")//tworzy obiekt String
+eval(s1) //zwraca liczbę 4
+eval(s2) //zwraca łańcuch "2 + 2"
+</pre>
+<p>{{ PreviousNext("Przewodnik po języku JavaScript 1.5:Obiekty predefiniowane:Obiekt RegExp", "Przewodnik po języku JavaScript 1.5:Języki oparte na klasach vs. oparte na prototypach") }}</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/operatory/operatory_przypisania/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/operatory/operatory_przypisania/index.html
new file mode 100644
index 0000000000..8af382eee6
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/operatory/operatory_przypisania/index.html
@@ -0,0 +1,67 @@
+---
+title: Operatory przypisania
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Operatory/Operatory_przypisania
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Operatory_przypisania" name="Operatory_przypisania">Operatory przypisania</h3>
+<p>Operator przypisania przypisuje wartość do jego lewego argumentu bazującego na wartości z jego prawego argumentu. Zasadnicze znaczenie posiada operator (=), który znaczy 'Przypisanie' i przypisuje wartość prawego argumentu do lewego. Jest to: x = y przypisanie wartości y do x.</p>
+<p>Inne operatory przypisania są stenografią dla standardowych operacji, jakie widzimy w poniższej tabeli.</p>
+<table class="fullwidth-table">
+ <tbody>
+ <tr>
+ <th>Skrócony operator</th>
+ <th>Znaczenie</th>
+ </tr>
+ <tr>
+ <td>x += y</td>
+ <td>x = x + y</td>
+ </tr>
+ <tr>
+ <td>x -= y</td>
+ <td>x = x - y</td>
+ </tr>
+ <tr>
+ <td>x *= y</td>
+ <td>x = x * y</td>
+ </tr>
+ <tr>
+ <td>x /= y</td>
+ <td>x = x / y</td>
+ </tr>
+ <tr>
+ <td>x %= y</td>
+ <td>x = x % y</td>
+ </tr>
+ <tr>
+ <td>x &lt;&lt;= y</td>
+ <td>x = x &lt;&lt; y</td>
+ </tr>
+ <tr>
+ <td>x &gt;&gt;= y</td>
+ <td>x = x &gt;&gt; y</td>
+ </tr>
+ <tr>
+ <td>x &gt;&gt;&gt;= y</td>
+ <td>x = x &gt;&gt;&gt; y</td>
+ </tr>
+ <tr>
+ <td>x &amp;= y</td>
+ <td>x = x &amp; y</td>
+ </tr>
+ <tr>
+ <td>x ^= y</td>
+ <td>x = x ^ y</td>
+ </tr>
+ <tr>
+ <td>x |= y</td>
+ <td>x = x | y</td>
+ </tr>
+ </tbody>
+</table>
+<p><small><b>Tabela: Operatory 'Przypisanie'</b></small></p>
+<p>{{ PreviousNext("Przewodnik po języku JavaScript 1.5:Operatory", "Przewodnik po języku JavaScript 1.5:Operatory:Operatory porównania") }}</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/podgląd_klas_liveconnect/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/podgląd_klas_liveconnect/index.html
new file mode 100644
index 0000000000..2dd4acf285
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/podgląd_klas_liveconnect/index.html
@@ -0,0 +1,47 @@
+---
+title: Podgląd klas LiveConnect
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Podgląd_klas_LiveConnect
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p>
+</p>
+<h2 id="Podgl.C4.85d_klas_LiveConnect" name="Podgl.C4.85d_klas_LiveConnect"> Podgląd klas LiveConnect </h2>
+<dl><dd> <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Praca_z_klas%c4%85_opakowuj%c4%85c%c4%85">Praca z klasą opakowującą</a>
+</dd></dl>
+<dl><dd> <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Komunikacja_mi%c4%99dzy_JavaScript_a_Java">Komunikacja między JavaScript a Java</a>
+</dd></dl>
+<dl><dd><dl><dd> <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Komunikacja_mi%c4%99dzy_JavaScript_a_Java#Obiekt_opakowuj.C4.85cy">Obiekt opakowujący</a>
+</dd></dl>
+</dd></dl>
+<dl><dd><dl><dd> <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Komunikacja_mi%c4%99dzy_JavaScript_a_Java#Praca_z_tablicami_w_Javie">Praca z tablicami w Javie</a>
+</dd></dl>
+</dd></dl>
+<dl><dd><dl><dd> <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Komunikacja_mi%c4%99dzy_JavaScript_a_Java#Referencja_paczki_i_klasy">Referencja paczki i klasy</a>
+</dd></dl>
+</dd></dl>
+<dl><dd><dl><dd> <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Komunikacja_mi%c4%99dzy_JavaScript_a_Java#Argumenty_typu_char">Argumenty typu char</a>
+</dd></dl>
+</dd></dl>
+<dl><dd><dl><dd> <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Komunikacja_mi%c4%99dzy_JavaScript_a_Java#Obs.C5.82uga_wyj.C4.85tk.C3.B3w_Javy_w_JavaScript">Obsługa wyjątków Javy w JavaScript</a>
+</dd></dl>
+</dd></dl>
+<dl><dd> <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Komunikacja_mi%c4%99dzy_Java_a_JavaScript">Komunikacja między Java a JavaScript</a>
+</dd></dl>
+<dl><dd><dl><dd> <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Komunikacja_mi%c4%99dzy_Java_a_JavaScript/U%c5%bcywanie_klas_LiveConnect">Używanie klas LiveConnect</a>
+</dd></dl>
+</dd></dl>
+<dl><dd> <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Konwersja_typu_danych">Konwersja typu danych</a>
+</dd></dl>
+<dl><dd><dl><dd> <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Konwersja_typu_danych/Konwersja_JavaScript_do_Java">Konwersja JavaScript do Java</a>
+</dd></dl>
+</dd></dl>
+<dl><dd><dl><dd> <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Podgl%c4%85d_klas_LiveConnect/Konwersja_typu_danych/Konwersja_Java_do_JavaScript">Konwersja Java do JavaScript</a>
+</dd></dl>
+</dd></dl>
+<div class="noinclude">
+</div>
+{{ languages( { "en": "en/Core_JavaScript_1.5_Guide/LiveConnect_Overview", "es": "es/Gu\u00eda_JavaScript_1.5/Concepto_general_de_LiveConnect", "ja": "ja/Core_JavaScript_1.5_Guide/LiveConnect_Overview" } ) }}
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/index.html
new file mode 100644
index 0000000000..28e5f9255c
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/index.html
@@ -0,0 +1,37 @@
+---
+title: Praca z przykładem
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_przykładem
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Przyk.C5.82ad_obiektu_Pracownik" name="Przyk.C5.82ad_obiektu_Pracownik">Przykład obiektu Pracownik</h3>
+<p>Dalsza część tego rozdziału opiera się na hierarchii pracowników przedstawionej na poniższym rysunku.</p>
+<p><img alt="Grafika:hier01.png"></p>
+<p><small><b>Rysunek 8.1: Prosta hierarchia obiektu</b></small></p>
+<p>W przykładzie tym zostały użyte następujące obiekty:</p>
+<ul>
+ <li>Pracownik posiada własność imie (której domyślną wartością jest pusty łańcuch znaków) i dept (z domyślną wartością "ogólny").</li>
+ <li>Manager jest oparty na Pracowniku. Dodaje własność raporty (której domyślną wartością jest pusta tablica mająca w zamierzeniu przyjmować obiekty Pracownik jako swoje wartości).</li>
+ <li>Robotnik również jest oparty na Pracowniku. Dodaje własność projekty (której domyślną wartością jest pusta tablica mająca w zamierzeniu przyjmować łańcuchy znaków jako swoje wartości).</li>
+ <li>Sprzedawca jest oparty na Robotniku. Dodaje on własność przydzial (z domyślną wartością 100). Nadpisuje on również własność dept wartością "sprzedaż" wskazując, że wszyscy sprzedawcy są w tym samym dziale.</li>
+ <li>Inzynier jest oparty na Robotniku. Dodaje własność maszyna (której domyślną wartością jest pusty łańcuch znaków) oraz nadpisuje własność dept wartością "inżynieria".</li>
+</ul>
+<p>Pozostała część przykładu:</p>
+<ul>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Praca_z_przyk%c5%82adem/Tworzenie_hierarchii">Tworzenie hierarchii</a></li>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Praca_z_przyk%c5%82adem/W%c5%82a%c5%9bciwo%c5%9bci_obiektu">Właściwości obiektu</a>
+ <ul>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Praca_z_przyk%c5%82adem/W%c5%82a%c5%9bciwo%c5%9bci_obiektu/Dziedziczenie_w%c5%82a%c5%9bciwo%c5%9bci">Dziedziczenie właściwości</a></li>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Praca_z_przyk%c5%82adem/W%c5%82a%c5%9bciwo%c5%9bci_obiektu/Dodawanie_w%c5%82a%c5%9bciwo%c5%9bci">Dodawanie właściwości</a></li>
+ </ul>
+ </li>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Praca_z_przyk%c5%82adem/Wi%c4%99cej_elastycznych_konstruktor%c3%b3w">Więcej elastycznych konstruktorów</a></li>
+</ul>
+<div class="noinclude">
+ <p>{{ PreviousNext("Przewodnik_po_języku_JavaScript_1.5:Języki_oparte_na_klasach_vs._oparte_na_prototypach", "Przewodnik_po_języku_JavaScript_1.5:Praca_z_przykładem:Tworzenie_hierarchii") }}</p>
+</div>
+<p> </p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/tworzenie_hierarchii/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/tworzenie_hierarchii/index.html
new file mode 100644
index 0000000000..a15422c92d
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/tworzenie_hierarchii/index.html
@@ -0,0 +1,149 @@
+---
+title: Tworzenie hierarchii
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_przykładem/Tworzenie_hierarchii
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Tworzenie_hierarchii" name="Tworzenie_hierarchii">Tworzenie hierarchii</h3>
+<p>Istnieje kilka sposobów zdefiniowania odpowiednich funkcji konstruktora do zaimplementowania hierarchii Pracownik. To w jaki sposób zdecydujesz się je zdefiniować zależy głównie od tego, co chcesz zrobić w swojej aplikacji.</p>
+<p>Ten fragment pokazuje jak użyć prostych (i stosunkowo mało elastycznych) definicji w celu zademonstrowania dziedziczenia. W tych definicjach nie możesz określić żadnych wartości własności podczas tworzenia obiektu. Nowo utworzony obiekt po prostu otrzymuje wartości domyślne, które możesz zmienić później. Rysunek 8.2 ilustruje hierarchię wraz z tymi prostymi definicjami.</p>
+<p>W prawdziwej aplikacji zdefiniowałbyś prawdopodobnie konstruktory, które pozwoliłyby Ci na zapewnienie własnościom wartości w czasie tworzenia obiektu (zobacz <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Praca_z_przyk%c5%82adem/Wi%c4%99cej_elastycznych_konstruktor%c3%b3w">więcej elastycznych konstruktorów</a>, aby uzyskać więcej informacji). Na chwilę obecną te proste definicje zademonstrują jak objawia się dziedziczenie.</p>
+<p><img alt="Grafika:hier02.png"><br>
+ <small><b>Rysunek 8.2: Definicje obiektu Pracownik</b></small></p>
+<p>Poniższe definicje obiektu <code>Pracownik</code> w Javie i JavaScripcie są podobne. Różnią się one jedynie tym, że w Javie musisz określić typ każdej własności (w przeciwieństwie do JavaScriptu) oraz musisz stworzyć wyraźną metodę konstruktora dla klasy Javy.</p>
+<p>&lt;/tr&gt;</p>
+<table class="fullwidth-table">
+ <tbody>
+ <tr>
+ <th>JavaScript</th>
+ <th>Java</th>
+ </tr>
+ <tr>
+ <td>
+ <pre>
+function Pracownik () {
+this.imie = "";
+this.dept = "ogólny";
+}
+</pre>
+ </td>
+ <td>
+ <pre>
+public class Pracownik {
+ public String imie;
+ public String dept;
+ public Pracownik () {
+ this.imie = "";
+ this.dept = "ogólny";
+ }
+}
+</pre>
+ </td>
+ </tr>
+ </tbody>
+</table>
+<p>Definicje <code>Manager</code> i <code>Robotnik</code> pokazuję różnicę w sposobie określania następnego obiektu wyższego w łańcuchu dziedziczenia. W JavaScripcie dodajesz instancję prototypową jako wartość własności prototypu funkcji konstruktora. Możesz do zrobić w dowolnej chwili po zdefiniowaniu konstruktora. W Javie określasz superklasę wewnątrz definicji klasy. Nie możesz zmienić superklasy spoza definicji klasy.</p>
+<p>&lt;/tr&gt;</p>
+<table class="fullwidth-table">
+ <tbody>
+ <tr>
+ <th>JavaScript</th>
+ <th>Java</th>
+ </tr>
+ <tr>
+ <td>
+ <pre>
+function Manager () {
+this.raporty = [];
+}
+Manager.prototype = new Pracownik;
+
+function Robotnik () {
+this.projekty = [];
+}
+Robotnik.prototype = new Pracownik;
+</pre>
+ </td>
+ <td>
+ <pre>
+public class Manager extends Pracownik {
+ public Employee[] raporty;
+ public Manager () {
+ this.raporty = new Pracownik[0];
+ }
+}
+
+public class Robotnik extends Pracownik {
+ public String[] projekty;
+ public Robotnik () {
+ this.projekty = new String[0];
+ }
+}
+</pre>
+ </td>
+ </tr>
+ </tbody>
+</table>
+<p>Definicje <code>Inzynier</code> i <code>Sprzedawca</code> tworzą obiekty, które pochodzą od <code>Robotnik</code> a stamtąd od <code>Pracownik</code>. Obiekt tych typów posiada własności wszystkich obiektów znajdujących się ponad nim w łańcuchu. W dodatku definicje te nadpisują dziedziczoną własność <code>dept</code> nowymi wartościami specyficznymi dla tych obiektów.</p>
+<table class="fullwidth-table">
+ <tbody>
+ <tr>
+ <th>JavaScript</th>
+ <th>Java</th>
+ </tr>
+ <tr>
+ <td>
+ <pre>
+function Sprzedawca () {
+ this.dept = "sprzedaż";
+ this.przydzial = 100;
+}
+Sprzedawca.prototype = new Robotnik;
+
+function Inzynier () {
+ this.dept = "inżynieria";
+ this.maszyna = "";
+}
+Inzynier.prototype = new Robotnik;
+</pre>
+ </td>
+ <td>
+ <pre>
+public class Sprzedawca extends Robotnik {
+ public double przydzial;
+ public Sprzedawca () {
+ this.dept = "sprzedaż";
+ this.przydzial = 100.0;
+ }
+}
+
+public class Inzynier extends Robotnik {
+ public String maszyna;
+ public Inzynier () {
+ this.dept = "inżynieria";
+ this.maszyna = "";
+ }
+}
+</pre>
+ </td>
+ </tr>
+ </tbody>
+</table>
+<p>Używając tych definicji możesz stworzyć instancje tych obiektów, których własności otrzymują domyślne wartości. Rysunek 8.3 ilustruje zastosowanie tych definicji JavaScriptu do zdefiniowania nowych obiektów i pokazuje wartości własności nowych obiektów.</p>
+<p><b>Uwaga:</b> Termin
+ <i>
+ instancja</i>
+ posiada określone techniczne znaczenie w językach opartych na klasach. W językach tych instancja jest pojedynczą składową klasy i jest całkowicie różna od klasy. W JavaScripcie "instancja" nie ma takiego technicznego znaczenia, ponieważ JavaScript nie posiada tej różnicy między klasami a instancjami. Jednak, mówiąc o JavaScripcie, "instancja" może być użyta nieformalnie w znaczeniu obiektu utworzonego za pomocą konkretnej funkcji konstruktora. Dlatego w tym przykładzie mógłbyś nieformalnie stwierdzić, że <code>janina</code> jest instancją <code>Inzynier</code>. Podobnie chociaż terminy
+ <i>
+ rodzic, dziecko, przodek</i>
+ i
+ <i>
+ potomek</i>
+ nie mają formalnego znaczenia w JavaScripcie, możesz użyć ich nieformalnie, aby odnieść się do obiektów znajdujących się wyżej lub niżej w łańcuchu prototypu.</p>
+<p><img alt="Grafika:hier03.png"><br>
+ <small><b>Rysunek 8.3: Tworzenie obiektów z prostymi definicjami</b></small></p>
+<p>{{ PreviousNext("Przewodnik_po_języku_JavaScript_1.5:Praca_z_przykładem", "Przewodnik_po_języku_JavaScript_1.5:Praca_z_przykładem:Własności_obiektu") }}</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/własności_obiektu/dodawanie_własności/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/własności_obiektu/dodawanie_własności/index.html
new file mode 100644
index 0000000000..ec2e836159
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/własności_obiektu/dodawanie_własności/index.html
@@ -0,0 +1,23 @@
+---
+title: Dodawanie własności
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_przykładem/Własności_obiektu/Dodawanie_własności
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Dodawanie_w.C5.82asno.C5.9Bci" name="Dodawanie_w.C5.82asno.C5.9Bci">Dodawanie własności</h3>
+<p>W JavaScripcie możesz dodawać własności do dowolnego obiektu w momencie uruchomienia. Nie jesteś zmuszony używać tylko własności dostarczonych przez funkcję konstruktora. Aby dodawać własność, która jest specyficzna dla pewnego obiektu, przypisz wartość do tego obiektu w następujący sposób:</p>
+<pre>mark.bonus = 3000;
+</pre>
+<p>Teraz obiekt <code>mark</code> posiada własność bonus, lecz nie posiadają jej inne obiekty <code>WorkerBee</code>.</p>
+<p>Jeśli dodasz nową własność do obiektu, który jest używany jako prototyp w funkcji konstruktora, dodajesz tę własność do wszystkich obiektów, które dziedziczą własności tego prototypu. Przykładowo, możesz dodać własność <code>specialty</code> dla wszystkich obiektów employee za pomocą następującej instrukcji:</p>
+<pre>Employee.prototype.specialty = "none";
+</pre>
+<p>Gdy tylko JavaScript wykona tę instrukcję, obiekt <code>mark</code> również będzie posiadał własność specialty wraz z wartością "<code>none</code>". Poniższy rysunek pokazuje efekt dodania tej własności do prototypu Employee oraz następnie nadpisania jej prototypem <code>Engineer</code>.</p>
+<p><img alt="Grafika:hier04.gif"><br>
+ <small><b>Rysunek 8.4: Dodawanie własności</b></small> {{ PreviousNext("Przewodnik po języku JavaScript 1.5:Praca z przykładem:Własności obiektu:Dziedziczenie własności", "Przewodnik po języku JavaScript 1.5:Praca z przykładem:Więcej elastycznych konstruktorów") }}</p>
+<div class="noinclude">
+  </div>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/własności_obiektu/dziedziczenie_własności/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/własności_obiektu/dziedziczenie_własności/index.html
new file mode 100644
index 0000000000..8287857c63
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/własności_obiektu/dziedziczenie_własności/index.html
@@ -0,0 +1,33 @@
+---
+title: Dziedziczenie własności
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_przykładem/Własności_obiektu/Dziedziczenie_własności
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Dziedziczenie_w.C5.82asno.C5.9Bci" name="Dziedziczenie_w.C5.82asno.C5.9Bci">Dziedziczenie własności</h3>
+<p>Przypuśćmy, że utworzyłeś obiekt marek jako <code>Robotnik</code>, tak jak pokazano na <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Praca_z_przyk%c5%82adem/Tworzenie_hierarchii">Rysunku 8.3</a>, za pomocą poniższej instrukcji:</p>
+<pre class="eval">marek = new Robotnik;
+</pre>
+<p>Gdy JavaScript napotyka na operator new, tworzy nowy ogólny obiekt i przekazuje go jako wartość słowa kluczowego <code>this</code> funkcji konstruktora Robotnik. Funkcja konstruktora bezpośrednio nadaje wartość własności <code>projekty</code> i bezwzględnie ustala wartość wewnętrznej własności <code>__proto__</code> jako <code>Robotnik.prototype</code> (ta nazwa własności posiada dwa znaki podkreślenia na początku i dwa na końcu). Własność <code>__proto__</code> decyduje o łańcuchu prototypu używanym do zwracania wartości własności. Gdy tylko własności te są ustalone, JavaScript zwraca nowy obiekt, a instrukcja przypisania przypisuje zmienną marek do tego obiektu.</p>
+<p>Proces ten nie umieszcza wartości bezpośrednio w obiekcie <code>marek</code> (wartości
+ <i>
+ lokalne</i>
+ ) dla własności, które <code>marek</code> dziedziczy z łańcucha prototypu. Gdy pytasz o wartość własności, JavaScript najpierw sprawdza czy wartość istnieje w tym obiekcie. Jeśli tak, zwraca tę wartość. Jeśli wartość nie istnieje tam lokalnie, JavaScript sprawdza łańcuch prototypu (używając własności <code>__proto__</code>). Jeśli obiekt w łańcuchu prototypu posiada wartość tej własności, jest ona zwracana. Jeśli własność nie zostanie znaleziona, JavaScript zgłasza, że obiekt nie posiada własności. W tym przypadku obiekt <code>mark</code> posiada następujące własności i wartości:</p>
+<pre class="eval">marek.imie = "";
+marek.dept = "ogólny";
+marek.projekty = [];
+</pre>
+<p>Obiekt <code>mark</code> dziedziczy wartości własności imie i dept z obiektu prototypowego w <code>mark.__proto__</code>. Ma on również przypisaną przez konstruktor Robotnik wartość własności projekty. Dzięki temu otrzymujesz dziedziczenie własności i ich wartości w JavaScripcie. Niektóre subtelności tego procesu zostały przedyskutowane w <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Powr%c3%b3t_dziedziczenia_w%c5%82asno%c5%9bci">Powrót dziedziczenia własności</a>.</p>
+<p>Ponieważ konstruktory te nie pozwalają na dostarczenie wartości specyficznych dla instancji, informacje te są ogólne. Wartościami własności są te domyślnie dzielone przez wszystkie nowe obiekty utworzone z Robotnik. Możesz oczywiście zmienić wartości dowolnej z tych własności. Mógłbyś podać określone informacje dla <code>marek</code> tak jak pokazano poniżej:</p>
+<pre class="eval">marek.imie = "Doe, Marek";
+marek.dept = "administrator";
+marek.projekty = ["navigator"];
+</pre>
+<div class="noinclude">
+ <p>{{ PreviousNext("Przewodnik po języku JavaScript 1.5:Praca z przykładem:Własności obiektu", "Przewodnik po języku JavaScript 1.5:Praca z przykładem:Własności obiektu:Dodawanie własności") }}</p>
+</div>
+<p> </p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/własności_obiektu/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/własności_obiektu/index.html
new file mode 100644
index 0000000000..85957fa7fc
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_przykładem/własności_obiektu/index.html
@@ -0,0 +1,19 @@
+---
+title: Własności obiektu
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_przykładem/Własności_obiektu
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="W.C5.82asno.C5.9Bci_obiektu" name="W.C5.82asno.C5.9Bci_obiektu">Własności obiektu</h3>
+<p>Ten artykuł omawia jak obiekty dziedziczą własności z innych obiektów w łańcuchu prototypu i co się stanie, gdy dodasz własność w momencie uruchomienia.</p>
+<ul>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Praca_z_przyk%c5%82adem/W%c5%82asno%c5%9bci_obiektu/Dziedziczenie_w%c5%82asno%c5%9bci">Dziedziczenie własności</a></li>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Praca_z_przyk%c5%82adem/W%c5%82a%c5%9bciwo%c5%9bci_obiektu/Dodawanie_w%c5%82a%c5%9bciwo%c5%9bci">Dodawanie własności</a></li>
+</ul>
+<p>{{ PreviousNext("Przewodnik po języku JavaScript 1.5:Praca z przykładem:Tworzenie hierarchii", "Przewodnik po języku JavaScript 1.5:Praca z przykładem:Własności obiektu:Dziedziczenie własności") }}</p>
+<div class="noinclude">
+  </div>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_wyrażeniami_regularnymi/przykłady_wyrażeń_regularnych/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_wyrażeniami_regularnymi/przykłady_wyrażeń_regularnych/index.html
new file mode 100644
index 0000000000..f615d23035
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_wyrażeniami_regularnymi/przykłady_wyrażeń_regularnych/index.html
@@ -0,0 +1,122 @@
+---
+title: Przykłady wyrażeń regularnych
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_wyrażeniami_regularnymi/Przykłady_wyrażeń_regularnych
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Przyk.C5.82ady" name="Przyk.C5.82ady">Przykłady</h3>
+<p>Poniższe przykłady prezentują niektóre użycia wyrażeń regularnych.</p>
+<h4 id="Zmiana_kolejno.C5.9Bci_w_.C5.82a.C5.84cuchu_znak.C3.B3w_wej.C5.9Bcia" name="Zmiana_kolejno.C5.9Bci_w_.C5.82a.C5.84cuchu_znak.C3.B3w_wej.C5.9Bcia">Zmiana kolejności w łańcuchu znaków wejścia</h4>
+<p>Następujący przykład ilustruje tworzenie wyrażeń regularnych i użycie <code>string.split()</code> i <code>string.replace()</code>. Czyści on bezwzględnie wejściowy łańcuch znaków zawierający imiona (pierwsze imię jest pierwsze) oddzielone odstępem, tabulatorem i dokładnie jednym średnikiem. Na koniec odwraca on kolejność imion (ostatnie imię jest pierwsze) i sortuje listę.</p>
+<pre>&lt;script type="text/javascript"&gt;
+
+// Łańcuch znaków z imionami zawiera wiele spacji i tabulatorów,
+// może również zawierać wiele spacji pomiędzy pierwszym a ostatnim imieniem.
+var imiona = "Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ; Chris Hand ";
+
+var output = new Array(
+ "---------- Oryginalny łańcuch znaków&lt;br&gt;&lt;br&gt;",
+ imiona + "&lt;br&gt;&lt;br&gt;");
+
+// Przygotuj dwa wzorce wyrażeń regularnych i tablicę do przechowywania.
+// Podziel łańcuch na elementy tablicy.
+
+// wzorzec: możliwe białe znaki, następnie średnik, potem znów możliwe białe
+var wzor = /\s*;\s*/;
+
+// Rozbij łańcuch znaków na części oddzielone przez powyższy wzorzec
+// i przechowaj je w tablicy o nazwie listaImion
+var listaImion = imiona.split(wzor);
+
+// Nowy wzorzec: jeden lub więcej znaków, następnie spacje, następnie znów znaki.
+// Użyj nawiasów, by "zapamiętać" porcje wzorca.
+// Zapamiętane porcje przydadzą się później.
+var wzor = /(\w+)\s+(\w+)/;
+
+// Nowa tablica do przechowywania przetwarzanych imion.
+var ListaWgNazwisk = new Array();
+
+// Wyświetl nazwę tablicy i wypełnij nową tablicę
+// imionami oddzielonymi za pomocą przecinka, zaczynając od ostatniego.
+//
+// Metoda "zamien" usuwa wszystko pasujące do wzorca
+// i zamienia to z zapamiętanymi porcjami.
+//
+// Zmienne $1 i $2 odwołują się do zapamiętanych porcji
+// podczas porównywania wzorca.
+
+output.push("---------- Po rozdzieleniu przez wyrażenie regularne&lt;BR&gt;");
+
+var i, len;
+for (i = 0, len = listaImion.length; i &lt; len; i++)
+{
+ output.push(nameList[i] + "&lt;br&gt;");
+ ListaWgNazwisk[i] = listaImion[i].replace(wzor, "$2, $1")
+}
+
+// Wyświetl nową tablicę.
+output.push("---------- Odwrócone imiona&lt;br&gt;");
+for (i = 0, len = ListaWgNazwisk.length; i &lt; len; i++)
+{
+ output.push(ListaWgNazwisk[i] + "&lt;br&gt;")
+}
+
+// Sortuj według ostatniego imienia, następnie wyświetl posortowaną tablicę.
+ListaWgNazwisk.sort();
+output.push("---------- Posortowano&lt;br&gt;");
+for (i = 0, len = ListaWgNazwisk.length; i &lt; len; i++)
+{
+ output.push(ListaWgNazwisk[i] + "&lt;br&gt;")
+}
+
+output.push("---------- Koniec&lt;br&gt;");
+
+document.write(output.join("\n"));
+
+&lt;/script&gt;
+</pre>
+<h4 id="U.C5.BCywanie_specjalnych_znak.C3.B3w_do_sprawdzenia_wej.C5.9Bcia" name="U.C5.BCywanie_specjalnych_znak.C3.B3w_do_sprawdzenia_wej.C5.9Bcia">Używanie specjalnych znaków do sprawdzenia wejścia</h4>
+<p>W następującym przykładzie, użytkownik wprowadza numer telefonu. Gdy użytkownik naciśnie klawisz Enter, skrypt sprawdzi poprawność numeru. Jeśli numer jest poprawny (pasuje do sekwencji znaków określonej przez wyrażenie regularne), skrypt wywoła okno z podziękowaniem użytkownikowi i zatwierdza numer. Jeśli numer nie jest poprawny, skrypt wywoła okno informacji o nieprawidłowym numerze telefonu.</p>
+<p>Wyrażenie regularne szuka zera lub jednego nawiasu otwartego \(?, po którym następują trzy cyfry \d{3}, następnie znów zero lub jeden nawias zamknięty \)?, potem jednego myślnika, ukośnika lub znaku dziesiętnego, a gdy je znajdzie zapamiętuje znaki (<code>-\\/\\.</code>), następujące po nich trzy cyfry i ciąg składający się z myślnika, ukośnika lub znaku dziesiętnego \1 i następujących potem czterech cyfr \d{4}.</p>
+<p>Zdarzenie <code>Change</code> zostaje aktywowane, kiedy użytkownik naciśnie klawisz Enter ustawiając wartość <code>RegExp.input</code>.</p>
+<pre>&lt;!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd"&gt;
+&lt;html&gt;
+ &lt;head&gt;
+ &lt;meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-2"&gt;
+ &lt;meta http-equiv="Content-Script-Type" content="text/javascript"&gt;
+ &lt;script type="text/javascript"&gt;
+ var re = /\(?\d{3}\)?([-\/\.])\d{3}\1\d{4}/;
+
+ function testInfo(phoneInput)
+ {
+ var OK = re.exec(phoneInput.value);
+
+ if (!OK)
+ {
+ window.alert(RegExp.input + " nie jest wprowadzony numerem kierunkowy!");
+ }
+ else
+ {
+ window.alert("Dziękuję, Twój numer telefonu to " + OK[0]);
+ }
+ }
+ &lt;/script&gt;
+ &lt;/head&gt;
+
+ &lt;body&gt;
+ &lt;p&gt;Wprowadź numer telefonu (z numerem kierunkowym), a następnie naciśnij klawisz Enter.&lt;/p&gt;
+ &lt;form action=""&gt;
+ &lt;input name="phone" onchange="testInfo(this);"&gt;
+ &lt;/form&gt;
+ &lt;/body&gt;
+&lt;/html&gt;
+</pre>
+<div class="noinclude">
+ <p>{{ PreviousNext("Przewodnik po języku JavaScript 1.5:Praca z wyrażeniami regularnymi:Globalne wyszukiwanie, wielkość znaków, wieloliniowe wejście", "Przewodnik po języku JavaScript 1.5:Blok instrukcji") }}</p>
+</div>
+<p> </p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_zamknięciami/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_zamknięciami/index.html
new file mode 100644
index 0000000000..fc71b64cad
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/praca_z_zamknięciami/index.html
@@ -0,0 +1,286 @@
+---
+title: Praca z zamknięciami
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Praca_z_zamknięciami
+---
+<h3 id="Praca_z_zamknięciami" name="Praca_z_zamknięciami">Praca z zamknięciami</h3>
+
+<p>Zamknięcia są często uważane za zaawansowaną właściwość JavaScript, ale zrozumienie ich jest niezbędne do opanowania tego języka.</p>
+
+<p>Rozważmy następującą funkcję:</p>
+
+<pre class="brush: js">function init() {
+ var name = "Mozilla";
+ function displayName() {
+ alert(name);
+ }
+ displayName();
+}
+</pre>
+
+<p>Funkcja <code>init()</code> tworzy lokalną zmienną o nazwie <code>name</code>, i następnie definiuje funkcję nazwaną <code>displayName()</code>. <code>displayName()</code> jest wewnętrzną funkcją - jest zdefiniowana wewnątrz funkcji <code>init()</code>, i jest dostępna jedynie w zasięgu ciała tej funkcji. <code>displayName()</code> nie posiada własnych lokalnych zmiennych, ale używa zmiennej <code>name</code> zadeklarowanej w funkcji zewnętrznej.</p>
+
+<p>Działa to całkiem nieźle - spróbujmy wykonać kod, aby zobaczyć co się stanie. To jest przykład <em>leksykalnego zasięgu</em>: w JavaScript, zasięg zmiennej jest zdefiniowany przez jej położenie w kodzie źródłowym, i zagnieżdżone funkcje mają dostęp do zmiennych zadeklarowanych w ich zewnętrznym obszarze.</p>
+
+<p>Teraz rozważmy następny przykład:</p>
+
+<pre class="brush: js">function makeFunc() {
+ var name = "Mozilla";
+ function displayName() {
+ alert(name);
+ }
+ return displayName;
+}
+
+var myFunc = makeFunc();
+myFunc();
+</pre>
+
+<p>Po wykonaniu kodu otrzymamy identyczny efekt jak poprzedni przykład z funkcją <code>init()</code>: łańcuch "Mozilla" zostanie wyświetlony w oknie alertowym JavaScript. Jaka jest różnica - i co ciekawsze - Czy wewnętrzna funkcja <code>displayName()</code> została zwrócona z zewnętrznej funkcji zanim została wykonana?</p>
+
+<p>Kod działa, lecz może się on wydawać nieintuicyjny. Normalnie, lokalne zmienne wewnątrz funkcji istnieją tylko podczas jej wykonywania. Kiedy <code>makeFunc()</code> została wykonana, spodziewamy się - i ma to sens - że zmienna <code>name</code> nie będzie więcej potrzebna. Skoro kod wykonuje oczekiwaną pracę, oczywiście nie ma mowy o przypadku.</p>
+
+<p>Rozwiązaniem tej zagadki jest fakt, że funkcja <code>myFunc</code> zostaje <em>zamknięciem</em>. Zamknięcie jest specjalnym rodzajem obiektu, który łączy dwie rzeczy: funkcję i środowisko, w którym ta funkcja została utworzona. The environment consists of any local variables that were in-scope at the time that the closure was created. In this case, <code>myFunc</code> is a closure that incorporates both the <code>displayName</code> function and the "Mozilla" string that existed when the closure was created.</p>
+
+<p>Here's a slightly more interesting example - a <code>makeAdder</code> function:</p>
+
+<pre class="brush: js">function makeAdder(x) {
+ return function(y) {
+ return x + y;
+ };
+}
+
+var add5 = makeAdder(5);
+var add10 = makeAdder(10);
+
+print(add5(2)); // 7
+print(add10(2)); // 12
+</pre>
+
+<p>In this example, we have defined a function <code>makeAdder(x)</code> which takes a single argument <code>x</code> and returns a new function. The function it returns takes a single argument <code>y</code>, and returns the sum of <code>x</code> and <code>y</code>.</p>
+
+<p>In essence, <code>makeAdder</code> is a function factory - it creates functions which can add a specific value to their argument. In the above example we use our function factory to create two new functions - one that adds 5 to its argument, and one that adds 10.</p>
+
+<p><code>add5</code> and <code>add10</code> are both closures. They share the same function body definition, but store different environments. In <code>add5</code>'s environment, <code>x</code> is 5. As far as <code>add10</code> is concerned, <code>x</code> is 10.</p>
+
+<h4 id="Praktyczne_zamknięcia" name="Praktyczne_zamknięcia">Praktyczne zamknięcia</h4>
+
+<p>That's the theory out of the way - but are closures actually useful? Let's consider their practical implications. A closure lets you associate some data (the environment) with a function that operates on that data. This has obvious parallels to object oriented programming, where objects allow us to associate some data (the object's properties) with one or more methods.</p>
+
+<p>Consequently, you can use a closure anywhere that you might normally use an object with only a single method.</p>
+
+<p>Situations where you might want to do this are particularly common on the web. Much of the code we write in web JavaScript is event-based - we define some behavior, then attach it to an event that is triggered by the user (such as a click or a keypress). Our code is generally attached as a callback: a single function which is executed in response to the event.</p>
+
+<p>Here's a practical example: suppose we wish to add to a page buttons that adjust the size of the page text. One way of doing this is to specify the font-size of the body element in pixels, then set the size of the other elements on the page (such as headers) using the relative em unit:</p>
+
+<pre class="brush: css">body {
+ font-family: Helvetica, Aria, sans-serif;
+ font-size: 12px;
+}
+
+h1 {
+ font-size: 1.5em;
+}
+h2 {
+ font-size: 1.2em;
+}
+</pre>
+
+<p>Our interactive text size buttons can change the font-size property of the body element, and the adjustments will be picked up by other elements on the page thanks to the relative units.</p>
+
+<p>Here's the JavaScript:</p>
+
+<pre class="brush: js">function makeSizer(size) {
+ return function() {
+ document.body.style.fontSize = size + 'px';
+ };
+}
+
+var size12 = makeSizer(12);
+var size14 = makeSizer(14);
+var size16 = makeSizer(16);
+</pre>
+
+<p><code>size12</code>, <code>size14</code> and <code>size16</code> are now functions which will resize the body text to 12, 14, and 16 pixels, respectively. We can attach them to buttons (in this case links) as follows:</p>
+
+<pre class="brush: js">function setupButtons() {
+ document.getElementById('size-12').onclick = size12;
+ document.getElementById('size-14').onclick = size14;
+ document.getElementById('size-16').onclick = size16;
+}</pre>
+
+<pre class="brush: html">&lt;a href="#" id="size-12"&gt;12&lt;/a&gt;
+&lt;a href="#" id="size-14"&gt;14&lt;/a&gt;
+&lt;a href="#" id="size-16"&gt;16&lt;/a&gt;
+</pre>
+
+<h4 id="Emulating_private_methods_with_closures" name="Emulating_private_methods_with_closures">Emulating private methods with closures</h4>
+
+<p>Languages such as Java provide the ability to declare methods private, meaning that they can only be called by other methods in the same class.</p>
+
+<p>JavaScript does not provide a native way of doing this, but it is possible to emulate private methods using closures. Private methods aren't just useful for restricting access to code: they also provide a powerful way of managing your global namespace, keeping non-essential methods from cluttering up the public interface to your code.</p>
+
+<p>Here's how to define some public functions that can access private functions and variables, using closures:</p>
+
+<pre class="brush: js">var Counter = (function() {
+ var privateCounter = 0;
+ function changeBy(val) {
+ privateCounter += val;
+ }
+ return {
+ increment: function() {
+ changeBy(1);
+ },
+ decrement: function() {
+ changeBy(-1);
+ },
+ value: function() {
+ return privateCounter;
+ }
+ }
+})();
+
+alert(Counter.value()); /* Alerts 0 */
+Counter.increment();
+Counter.increment();
+alert(Counter.value()); /* Alerts 2 */
+Counter.decrement();
+alert(Counter.value()); /* Alerts 1 */
+</pre>
+
+<p>There's a lot going on here. In previous examples each closure has had its own environment; here we create a single environment which is shared by three functions: <code>Counter.increment</code>, <code>Counter.decrement</code> and <code>Counter.value</code>.</p>
+
+<p>The shared environment is created in the body of an anonymous function, which is executed as soon as it has been defined. The environment contains two private items: a variable called <code>privateCounter</code> and a function called <code>changeBy</code>. Neither of these private items can be accessed directly from outside the anonymous function. Instead, they must be accessed by the three public functions that are returned from the anonymous wrapper.</p>
+
+<p>Those three public functions are closures that share the same environment. Thanks to JavaScript's lexical scoping, they each have access to the <code>privateCounter</code> variable and <code>changeBy</code> function.</p>
+
+<p>Using closures in this way provides a number of benefits that are normally associated with object oriented programming, in particular data hiding and encapsulation.</p>
+
+<h4 id="Creating_closures_in_loops:_A_common_mistake" name="Creating_closures_in_loops:_A_common_mistake">Creating closures in loops: A common mistake</h4>
+
+<p>Prior to the introduction of the <code>let</code> keyword in JavaScript 1.7, a common problem with closures occurred when they were created inside a loop. Consider the following example:</p>
+
+<pre class="brush: html">&lt;p id="help"&gt;Helpful notes will appear here&lt;/p&gt;
+&lt;p&gt;E-mail: &lt;input type="text" id="email" name="email"&gt;&lt;/p&gt;
+&lt;p&gt;Name: &lt;input type="text" id="name" name="name"&gt;&lt;/p&gt;
+&lt;p&gt;Age: &lt;input type="text" id="age" name="age"&gt;&lt;/p&gt;
+</pre>
+
+<pre class="brush: js">function showHelp(help) {
+ document.getElementById('help').innerHTML = help;
+}
+
+function setupHelp() {
+ var helpText = [
+ {'id': 'email', 'help': 'Your e-mail address'},
+ {'id': 'name', 'help': 'Your full name'},
+ {'id': 'age', 'help': 'Your age (you must be over 16)'}
+ ];
+
+ for (var i = 0; i &lt; helpText.length; i++) {
+ var item = helpText[i];
+ document.getElementById(item.id).onfocus = function() {
+ showHelp(item.help);
+ }
+ }
+}
+</pre>
+
+<p>The <code>helpText</code> array defines three helpful hints, each associated with the ID of an input field in the document. The loop cycles through these definitions, hooking up an onfocus event to each one that shows the associated help method.</p>
+
+<p>If you try this code out, you'll see that it doesn't work as expected. No matter what field you focus on, the message about your age will be displayed.</p>
+
+<p>The reason for this is that the functions assigned to onfocus are closures; they consist of the function definition and the captured environment from the <code>setupHelp</code> function's scope. Three closures have been created, but each one shares the same single environment. By the time the onfocus callbacks are executed, the loop has run its course and the item variable (shared by all three closures) has been left pointing to the last entry in the <code>helpText</code> list.</p>
+
+<p>One solution in this case is to use more closures: in particular, to use a function factory as described earlier on:</p>
+
+<pre class="brush: js">function showHelp(help) {
+ document.getElementById('help').innerHTML = help;
+}
+
+function makeHelpCallback(help) {
+ return function() {
+ showHelp(help);
+ };
+}
+
+function setupHelp() {
+ var helpText = [
+ {'id': 'email', 'help': 'Your e-mail address'},
+ {'id': 'name', 'help': 'Your full name'},
+ {'id': 'age', 'help': 'Your age (you must be over 16)'}
+ ];
+
+ for (var i = 0; i &lt; helpText.length; i++) {
+ var item = helpText[i];
+ document.getElementById(item.id).onfocus = makeHelpCallback(item.help);
+ }
+}
+</pre>
+
+<p>This works as expected. Rather than the callbacks all sharing a single environment, the <code>makeHelpCallback</code> function creates a new environment for each one in which <code>help</code> refers to the corresponding string from the <code>helpText</code> array.</p>
+
+<p>If you are using JavaScript 1.7 or higher, you can solve this problem by using the <code>let</code> keyword to create a variable that has block level scope:</p>
+
+<pre class="brush: js"> for (var i = 0; i &lt; helpText.length; i++) {
+ let item = helpText[i];
+ document.getElementById(item.id).onfocus = function() {
+ showHelp(item.help);
+ }
+ }
+</pre>
+
+<p>The <code>let</code> keyword causes the item variable to be created with block level scope, causing a new reference to be created for each iteration of the for loop. This means that a separate variable is captured for each closure, solving the problem caused by the shared environment.</p>
+
+<h4 id="Performance_considerations" name="Performance_considerations">Performance considerations</h4>
+
+<p>It is unwise to unnecessarily create functions within other functions if closures are not needed for a particular task as it will negatively affect script performance.</p>
+
+<p>For instance, when creating a new object/class, methods should normally be associated to the object's prototype rather than defined into the object constructor. The reason is that whenever the constructor is called the methods would get reassigned (that is, for every object creation).</p>
+
+<p>Consider the following impractical but demonstrative case:</p>
+
+<pre class="brush: js">function MyObject(name, message) {
+ this.name = String(name);
+ this.message = String(message);
+ this.getName = function() {
+ return this.name;
+ };
+
+ this.getMessage = function() {
+ return this.message;
+ };
+}
+</pre>
+
+<p>The previous code does not take advantage of the benefits of closures and thus should instead be formulated:</p>
+
+<pre class="brush: js">function MyObject(name, message) {
+ this.name = String(name);
+ this.message = String(message);
+}
+MyObject.prototype = {
+ getName: function() {
+ return this.name;
+ },
+ getMessage: function() {
+ return this.message;
+ }
+};
+</pre>
+
+<p>Or as follows:</p>
+
+<pre class="brush: js">function MyObject(name, message) {
+ this.name = String(name);
+ this.message = String(message);
+}
+MyObject.prototype.getName = function() {
+ return this.name;
+};
+MyObject.prototype.getMessage = function() {
+ return this.message;
+};
+</pre>
+
+<p>In the two previous examples, the inherited prototype can be shared by all objects and the method definitions need not occur at every object creation. See <a href="/en/Core_JavaScript_1.5_Guide#Details_of_the_Object_Model" title="en/Core_JavaScript_1.5_Guide#Details_of_the_Object_Model">Core_JavaScript_1.5_Guide#Details_of_the_Object_Model</a> for more details.</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/definiowanie_metod/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/definiowanie_metod/index.html
new file mode 100644
index 0000000000..64b164df13
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/definiowanie_metod/index.html
@@ -0,0 +1,48 @@
+---
+title: Definiowanie metod
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Definiowanie_metod
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Definiowanie_metod" name="Definiowanie_metod">Definiowanie metod</h3>
+<p>Funkcja
+ <i>
+ method</i>
+ jest funkcją łączącą z obiektem. Definiujesz metodę w ten sam sposób jak definiujesz standardową funkcje. Użyj następującej składni do połączenia funkcji z istniejącym obiektem:</p>
+<pre>object.methodname = function_name
+</pre>
+<p>gdzie: <code>object</code> jest to istniejący obiekt, <code>methodname</code> jest nazwą przydzielonej metody i <code>function_name</code> jest nazwą funkcji.</p>
+<p>Możesz nazwać metodę w kontekście obiektu jako następujące:</p>
+<pre>object.methodname(params);
+</pre>
+<p>Możesz definiować metody dla typów obiektu włączając do tego definiowanie metody w funkcji konstruktora obiektowego. Na przykład, możesz zdefiniować funkcję która będzie formatowała i wyświetlała własności poprzednio-definiowanych obiektów <code>car</code>, na przykład:</p>
+<pre>function displayCar() {
+ var result = "A Beautiful " + this.year + " " + this.make
+ + " " + this.model;
+ pretty_print(result);
+}
+</pre>
+<p>gdzie: <code>pretty_print</code> jest funkcją wyświetlającą wg poziomej reguły i łańcuch znaków. Uwaga przy użyciu <code>this</code> odnoszącego się do obiektu, do której metody należą.</p>
+<p>Tworzymy funkcję metody <code>car</code>, poprzez dodanie instrukcji:</p>
+<pre>this.displayCar = displayCar;
+</pre>
+<p>Do definicji obiektu. Więc, pełna definicja <code>car</code> będzie wyglądała jak</p>
+<pre>function car(make, model, year, owner) {
+ this.make = make;
+ this.model = model;
+ this.year = year;
+ this.owner = owner;
+ this.displayCar = displayCar;
+}
+</pre>
+<p>Teraz możemy nazwać metodę <code>displayCar</code> dla każdego następującego kodu:</p>
+<pre>car1.displayCar()
+car2.displayCar()
+</pre>
+<p>Efektem będzie produkcja wyjściowa następującego przykładu.</p>
+<p><img alt="Grafika:Obja.gif"><br>
+ <small><b>Przykład: Wyświetlanie metody po jej wykonaniu</b></small></p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/definiowanie_własności_typu_obiektu/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/definiowanie_własności_typu_obiektu/index.html
new file mode 100644
index 0000000000..e52ead3f93
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/definiowanie_własności_typu_obiektu/index.html
@@ -0,0 +1,19 @@
+---
+title: Definiowanie własności typu obiektu
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Definiowanie_własności_typu_obiektu
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Definiowanie_w.C5.82asno.C5.9Bci_typu_obiektu" name="Definiowanie_w.C5.82asno.C5.9Bci_typu_obiektu">Definiowanie własności typu obiektu</h3>
+<p>Dodaj własność do poprzednio zdefiniowanego typu obiektu stosując własności <code>prototype</code>. Zdefiniuje te własności, które współdzielą wszystkie obiekty określonego typu, raczej niż tylko jeden przypadek obiektu. Następnie dodajemy kod własności <code>color</code> do wszystkich obiektów typu <code>car</code> i potem przydziela wartość do własności <code>color</code> obiektu <code>car1</code>.</p>
+<pre>Car.prototype.color=null;
+car1.color="black";
+</pre>
+<p>Zobacz <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/Function#W.C5.82asno.C5.9Bci">własności <code>prototype</code></a> z funkcji obiektu w <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5">dokumentacji języka JavaScript</a>, aby uzyskać dodatkowe informacje.</p>
+<div class="noinclude">
+  </div>
+<p> </p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/indeksowanie_własności_obiektu/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/indeksowanie_własności_obiektu/index.html
new file mode 100644
index 0000000000..c7d904e907
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/indeksowanie_własności_obiektu/index.html
@@ -0,0 +1,16 @@
+---
+title: Indeksowanie własności obiektu
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Indeksowanie_własności_obiektu
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Indeksowanie_w.C5.82asno.C5.9Bci_obiektu" name="Indeksowanie_w.C5.82asno.C5.9Bci_obiektu">Indeksowanie własności obiektu</h3>
+<p>W JavaScripcie 1.0 możesz odwołać się do własności obiektu poprzez nazwę własności lub jej indeks porządkowy. Jednakże w JavaScripcie 1.1 i późniejszych, jeśli zdefiniujesz początkowo własność poprzez jej nazwę, musisz zawsze odwoływać się do niej poprzez nazwę, zaś jeśli zdefiniujesz własność poprzez indeks, musisz zawsze odwoływać się do niej poprzez ten indeks.</p>
+<p>Dotyczy to sytuacji, gdy tworzysz obiekt i jego własności poprzez funkcję konstruktora, tak jak w powyższym przykładzie obiektu typu Auto oraz gdy definiujesz samodzielnie własności w sposób jawny (na przykład <code>mojeAuto.kolor = "czerwony"</code>). Dlatego jeśli definiujesz początkowo własności obiektu z indeksem, tak jak <code>mojeAuto{{ mediawiki.external(5) }} = "25 mpg"</code>, możesz później odwołać się do własności poprzez <code>myCar{{ mediawiki.external(5) }}</code>.</p>
+<p>Wyjątkiem od tej reguły są obiekty zaczerpnięte z języka HTML, jak na przykład tablica <code>forms</code>. Możesz zawsze odwoływać się do obiektów w tych tablicach zarówno poprzez ich liczbę porządkową (w zależności od tego, w jakiej kolejności pojawiają się w dokumencie) lub poprzez ich nazwę (jeśli jest zdefiniowana). Przykładowo, jeśli drugi znacznik <code>&lt;FORM&gt;</code> w dokumencie posiada atrybut <code><b>NAME</b></code> o wartości "mojFormularz", możesz się odwołać do formularza przez <code>document.forms{{ mediawiki.external(1) }}</code> lub <code>document.forms{{ mediawiki.external('\"mojFormularz\"') }}</code> lub też <code>document.mojFormularz</code>. {{ PreviousNext("Przewodnik po języku JavaScript 1.5:Tworzenie nowych obiektów:Zastosowanie konstruktorów funkcji", "Przewodnik po języku JavaScript 1.5:Tworzenie nowych obiektów:Definiowanie własności typu obiektu") }}</p>
+<div class="noinclude">
+  </div>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/index.html
new file mode 100644
index 0000000000..44ccf12523
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/index.html
@@ -0,0 +1,22 @@
+---
+title: Tworzenie nowych obiektów
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Tworzenie_nowych_obiekt.C3.B3w" name="Tworzenie_nowych_obiekt.C3.B3w">Tworzenie nowych obiektów</h3>
+<p>JavaScript ma liczbę obiektów predefiniowanych. W dodatku, możesz tworzyć swoje własne obiekty. W JavaScript 1.2 i późniejszych wersjach, możesz tworzyć obiekt używając inicjatora obiektu. Alternatywą, jest pierwszy tworzony konstruktor funkcji i następna instancja używanego obiektu funkcji i operatora <code>new</code>.</p>
+<ul>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%c3%b3w/U%c5%bcywanie_inicjacji_obiektu">Używanie inicjacji obiektu</a></li>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%c3%b3w/U%c5%bcywanie_konstruktor%c3%b3w_funkcji">Używanie konstruktorów funkcji</a></li>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%c3%b3w/Indeksowanie_w%c5%82asno%c5%9bci_obiektu">Indeksowanie własności obiektu</a></li>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%c3%b3w/Definiowanie_w%c5%82asno%c5%9bci_typu_obiektu">Definiowanie własności typu obiektu</a></li>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%c3%b3w/Definiowanie_metod">Definiowanie metod</a></li>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%c3%b3w/U%c5%bcywanie_'this'_do_obiektu_referencji">Używanie <code>this</code> do obiektu referencji</a></li>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%c3%b3w/Definiowanie_metod_pobierania_i_ustawiania">Definiowanie metod pobierania i ustawiania</a></li>
+ <li><a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Tworzenie_nowych_obiekt%c3%b3w/Usuwanie_w%c5%82asno%c5%9bci">Usuwanie własności</a></li>
+</ul>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/usuwanie_własności/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/usuwanie_własności/index.html
new file mode 100644
index 0000000000..ade0f3875e
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/usuwanie_własności/index.html
@@ -0,0 +1,26 @@
+---
+title: Usuwanie własności
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Usuwanie_własności
+tags:
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Usuwanie_w.C5.82a.C5.9Bciwo.C5.9Bci" name="Usuwanie_w.C5.82a.C5.9Bciwo.C5.9Bci">Usuwanie właściwości</h3>
+<p>Możesz usunąć właściwość używając operatora <code><b>delete</b></code> Poniższy kod pokazuje jak usunąć właściwość.</p>
+<pre>//Tworzymy nową własność, myobj, z właściwościami a i b.
+myobj = new Object;
+myobj.a=5;
+myobj.b=12;
+
+//Usuwamy właściwość, opuszczając myobj z właściwością tylko b.
+delete myobj.a;
+</pre>
+<p>Możesz także użyć <code><b>delete</b></code> do usunięcia globalnych zmiennych jeśli słowo kluczowe <code><b>var</b></code> nie było użyte do zadeklarowania zmiennej:</p>
+<pre>g = 17;
+delete g;
+</pre>
+<p>Zobacz <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Operatory/Operatory_specjalne#delete">delete</a> aby uzyskać więcej informacji.</p>
+<div class="noinclude">
+  </div>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/używanie_inicjacji_obiektu/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/używanie_inicjacji_obiektu/index.html
new file mode 100644
index 0000000000..b1b38112d9
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/używanie_inicjacji_obiektu/index.html
@@ -0,0 +1,36 @@
+---
+title: Używanie inicjacji obiektu
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Używanie_inicjacji_obiektu
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Strony_wymagające_dopracowania
+ - Wszystkie_kategorie
+---
+<h3 id="Zastosowanie_inicjacji_obiektu" name="Zastosowanie_inicjacji_obiektu">Zastosowanie inicjacji obiektu</h3>
+
+<p>Uzupełnieniem możliwości tworzenia obiektów poprzez konstruktora funkcji, jest inicjator obiektów. Używanie inicjatora obiektów jest czasami wiązane z tworzeniem obiektów poprzez oznaczanie literowe. "Inicjator obiektu" jest nazwą zaczerpniętą ze standardów języka C++.</p>
+
+<p>Składnia tworząca obiekt, używając inicjatora obiektu jest następująca:</p>
+
+<pre>objectName = {własność1:wartość2, własność2:wartość2,..., własnośćN:wartośćN}
+</pre>
+
+<p>gdzie objectName jest nazwą obiektu, każda własność jest identyfikatorem (nazwą, liczbą lub ciągiem znaków) a każda wartość jest wyrażeniem, którego wartość jest przypisana do własności. objectName jak i przypisanie są opcjonalne. Jeśli w pozostałej części kodu nie potrzebujesz odwoływać się do tego obiektu, nie musisz go przypisywać do zmiennej.</p>
+
+<p>Jeśli obiekt został utworzony z użyciem inicjatora obiektu w głównym skrypcie, JavaScript interpretuje go za każdym razem, gdy ten przetwarza wyrażenie zawierające literał obiektu. Dodatkowo, inicjator użyty w funkcji, jest tworzony przy każdym jej wywołaniu.</p>
+
+<p>Poniższa instrukcja tworzy obiekt i przypisuje go do zmiennej x, tylko w przypadku, gdy warunek jest prawdziwy.</p>
+
+<pre>if (warunek) x = {a:"witaj"}
+</pre>
+
+<p>Poniższy przykład tworzy obiekt mojaHonda z trzema własnościami. Należy zwrócić uwagę, iż silnik jest również obiektem z jego własnymi własnościami.</p>
+
+<pre>mojaHonda = {kolor:"czerwony", koła:4, silnik:{ilośćCylindrów:4, objętość:2.2}}
+</pre>
+
+<p>Inicjatorów możesz użyć również do tworzenia tablic. Zobacz <a href="/pl/Przewodnik_po_języku_JavaScript_1.5/Literały#Litera.c5.82y_tablicy" title="pl/Przewodnik po języku JavaScript 1.5/Literały#Litera.c5.82y tablicy">literały tablic</a>.</p>
+
+<p>JavaScript 1.1 i wcześniejsze. Nie możesz używać inicjatorów obiektów. Możesz tworzyć obiekty tylko używając ich konstruktorów lub funkcji udostępnianych przez inne obiekty w tym celu. Zobacz <a href="/pl/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Zastosowanie_konstruktorów_funkcji" title="pl/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Zastosowanie_konstruktorów_funkcji">Zastosowanie konstruktorów funkcji</a>.</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/zastosowanie_'this'_do_obiektu_referencji/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/zastosowanie_'this'_do_obiektu_referencji/index.html
new file mode 100644
index 0000000000..2b4ad01835
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/zastosowanie_'this'_do_obiektu_referencji/index.html
@@ -0,0 +1,32 @@
+---
+title: Zastosowanie 'this' do obiektu referencji
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Zastosowanie_'this'_do_obiektu_referencji
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Zastosowanie_this_do_obiektu_referencji" name="Zastosowanie_this_do_obiektu_referencji">Zastosowanie <code>this</code> do obiektu referencji</h3>
+<p>JavaScript posiada specjalne słowo kluczowe <code>this</code>, które możemy użyć wewnątrz metody wskazującej nam aktualny obiekt. Na przykład: przypuśćmy, że mamy funkcję nazywającą się <code>validate</code>, która waliduje wartość własności obiektów, nadając im wartość wyższą lub niższą:</p>
+<pre>function validate(obj, lowval, hival) {
+ if ((obj.value &lt; lowval) || (obj.value &gt; hival))
+ alert("Invalid Value!")
+}
+</pre>
+<p>Następnie, możesz nazwać/powiedzieć, że funkcja <code>validate</code>, w każdym elemencie formularza, <code>onChange</code> posiada uchwyt, którego używa do przejścia do określonego elementu <code>formularza</code>, jak w następującym przykładzie:</p>
+<pre>&lt;INPUT TYPE="text" NAME="age" SIZE=3
+ onChange="validate(this, 18, 99)"&gt;
+</pre>
+<p>Generalnie, <code>this</code> jest referencją do nazwy obiektu w metodzie.</p>
+<p>Kiedy połączymy właściwości <code>form</code>, <code>this</code> który potrafi się odwołać do bieżącego obiektu formularza będącego jego 'rodzicem'. W poniższym przykładzie, formularz <code>myForm</code> składa się z obiektu <code>Text</code> oraz przycisku. Kiedy użytkownik kliknie przycisk, wartość obiektu <code>Text</code> jest ustawiana do nazwy formularza. Przyciski wywołują uchwyt zdarzenia <code>onClick</code> poprzez zastosowanie <code>this.form</code> w celu wskazania formularza będącego 'rodzicem', <code>myForm</code>.</p>
+<pre>&lt;FORM NAME="myForm"&gt;
+Form name:&lt;INPUT TYPE="text" NAME="text1" VALUE="Beluga"&gt;
+&lt;P&gt;
+&lt;INPUT NAME="button1" TYPE="button" VALUE="Show Form Name"
+ onClick="this.form.text1.value=this.form.name"&gt;
+&lt;/FORM&gt;
+</pre>
+<div class="noinclude">
+  </div>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/zastosowanie_konstruktorów_funkcji/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/zastosowanie_konstruktorów_funkcji/index.html
new file mode 100644
index 0000000000..1c5d6cdbda
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_nowych_obiektów/zastosowanie_konstruktorów_funkcji/index.html
@@ -0,0 +1,62 @@
+---
+title: Zastosowanie konstruktorów funkcji
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_nowych_obiektów/Zastosowanie_konstruktorów_funkcji
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Zastosowaniem_konstruktor.C3.B3w_funkcji" name="Zastosowaniem_konstruktor.C3.B3w_funkcji">Zastosowaniem konstruktorów funkcji</h3>
+<p>Alternatywnie, możesz utworzyć obiekt w dwóch krokach:</p>
+<ol>
+ <li>Zdefiniować typ obiektu poprzez napisanie konstruktora funkcji.</li>
+ <li>Utworzyć natychmiast nowy obiekt.</li>
+</ol>
+<p>Do zdefiniowania typu obiektu, tworzymy funkcję dla typu obiektu który określa nazwę, właściwości i metody. Na przykład, sądząc, że chcesz utworzyć typ obiektu dla samochodów. Chcesz ten typ obiektu nazwać <code>car</code> i chcesz posiadać właściwości do zrobienia <code>make</code> , <code>model</code>, <code>year</code> i <code>color</code>. Aby to zrobić, powinieneś napisać następującą funkcje:</p>
+<pre>function car(make, model, year) {
+ this.make = make;
+ this.model = model;
+ this.year = year;
+}
+</pre>
+<p>Uwaga, użycie <code>this</code> pozwala wartości własności obiektów opartych na wartościach pasujących do tej funkcji.</p>
+<p>Teraz możesz utworzyć obiekt nazwany <code>mycar</code> w następującym kodzie:</p>
+<pre>mycar = new car("Eagle", "Talon TSi", 1993);
+</pre>
+<p>Instrukcja ta tworzy <code>mycar</code> i dopuszcza to do określonych wartości. Potem wartość <code>mycar.make</code> jest łańcuchem "Eagle", <code>mycar.year</code> jest liczba całkowita 1993, w ten sposób<b>(?)</b>.</p>
+<p>Utwórz jakis numer obiektu <code>car</code> nazywając <code>new</code>. Na przykład,</p>
+<pre>kenscar = new car("Nissan", "300ZX", 1992);
+vpgscar = new car("Mazda", "Miata", 1990);
+</pre>
+<p>obiekt posiada właściwość która sama w sobie posiada jeszcze jeden obiekt. Na przykład; przypuśćmy, że zdefiniujemy obiekt nazwany następująco <code>person</code>:</p>
+<pre>function person(name, age, sex) {
+ this.name = name
+ this.age = age
+ this.sex = sex
+}
+</pre>
+<p>i potem przypisze nowe obiekty <b>person</b> jako następujące:</p>
+<pre>rand = new person("Rand McKinnon", 33, "M");
+ken = new person("Ken Jones", 39, "M");
+</pre>
+<p>Potem znów zapisz definicję <b>car</b> włączając własne właściwości, które pobierają obiekt <code><b>person</b></code>, jak następująco:</p>
+<pre>function car(make, model, year, owner) {
+ this.make = make;
+ this.model = model;
+ this.year = year;
+ this.owner = owner
+}
+</pre>
+<p>Błyskawiczne nowe obiekty, następnie użyjesz:</p>
+<pre>car1 = new car("Eagle", "Talon TSi", 1993, rand);
+car2 = new car("Nissan", "300ZX", 1992, ken);
+</pre>
+<p>Uwaga, która zamiast przechodzić z wartości literału string lub integer kiedy są tworzone nowe obiekty, powyższe instrukcje dzieją się w obiektach <code>rand</code> i <code>ken</code> jako argumenty dla właściciela. Potem jeśli chcesz przekonać się do nazwy właściciela <code>car2</code> , możesz zaakceptować następujące warunki:</p>
+<pre>car2.owner.name
+</pre>
+<p>Notuj wszystko co możesz zawsze dodać do poprzedniego zdefiniowanego obiektu. Na przykład, instrukcja</p>
+<pre>car1.color = "black"
+</pre>
+<p>dodawaj właściwości <code>color</code> do <code>car1</code>, i przydziel tą wartość "black." Jednakże, to nie wpływa na pozostałe obiekty. Dodaj nową właściwość do wszystkich obiektów tego samego typu, musisz mieć dodaną właściwość do definicji obiektu typu <code>car</code>.</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_wyrażenia_regularnego/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_wyrażenia_regularnego/index.html
new file mode 100644
index 0000000000..e6a76041a3
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/tworzenie_wyrażenia_regularnego/index.html
@@ -0,0 +1,43 @@
+---
+title: Tworzenie wyrażenia regularnego
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Tworzenie_wyrażenia_regularnego
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Tworzenie_wyra.C5.BCenia_regularnego" name="Tworzenie_wyra.C5.BCenia_regularnego">Tworzenie wyrażenia regularnego</h3>
+<p>Wyrażenie regularne możemy skonstruować na jeden z dwóch sposobów:</p>
+<ul>
+ <li>za pomocą literału wyrażenia regularnego, np.</li>
+</ul>
+<pre> re = /ab+c/; </pre>
+<dl>
+ <dd>
+ <dl>
+ <dd>
+ Literały wyrażeń regularnych są kompilowane w czasie czytania skryptu (
+ <i>
+ script evaluation</i>
+ ). Gdy wyrażenie regularne nie będzie się zmieniać, sposób ten zapewni lepszą wydajność.</dd>
+ </dl>
+ </dd>
+</dl>
+<ul>
+ <li>wywołując konstruktora obiektu <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/RegExp">RegExp</a>, np.</li>
+</ul>
+<pre> re = new RegExp("ab+c"); </pre>
+<dl>
+ <dd>
+ <dl>
+ <dd>
+ Użycie konstruktora powoduje kompilację wyrażenia regularnego w czasie wykonywania (
+ <i>
+ runtime</i>
+ ). Użyj konstruktora, jeśli wiadomo, że wyrażenie regularne będzie się zmieniało lub, gdy nie będzie znane i zostanie podane z innego źródła, np. przez użytkownika.</dd>
+ </dl>
+ </dd>
+</dl>
+<p>{{ PreviousNext("Przewodnik po języku JavaScript 1.5:Operatory", "Przewodnik po języku JavaScript 1.5:Zapisywanie wzorca wyrażenia regularnego") }}</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/zapisywanie_wzorca_wyrażenia_regularnego/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/zapisywanie_wzorca_wyrażenia_regularnego/index.html
new file mode 100644
index 0000000000..65c13b3816
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/zapisywanie_wzorca_wyrażenia_regularnego/index.html
@@ -0,0 +1,215 @@
+---
+title: Zapisywanie wzorca wyrażenia regularnego
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Zapisywanie_wzorca_wyrażenia_regularnego
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Strony_wymagające_dopracowania
+ - Wszystkie_kategorie
+---
+<h3 id="Zapisywanie_wzorca_wyra.C5.BCenia_regularnego" name="Zapisywanie_wzorca_wyra.C5.BCenia_regularnego">Zapisywanie wzorca wyrażenia regularnego</h3>
+
+<p>Wzorzec wyrażenia regularnego składa się ze znaków prostych takich jak <code>/abc/</code> lub kombinacji znaków prostych i specjalnych, jak np. <code>/ab*c/</code> lub <code>/Rozdział (\d+)\.\d*/</code>. Ostatni przykład zawiera nawiasy, które działają jak urządzenie pamięci. Wzorzec w nawiasie użyty w tym porównaniu jest zapamiętywany w celu umożliwienia ponownego użycia, tak jak zostało to opisane w <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Praca_z_wyra%c5%bceniami_regularnymi/U%c5%bcycie_odpowiedniego_znaku">Using Parenthesized Substring Matches</a>.</p>
+
+<p> </p>
+
+<h4 id="U.C5.BCywanie_prostych_wzorc.C3.B3w" name="U.C5.BCywanie_prostych_wzorc.C3.B3w">Używanie prostych wzorców</h4>
+
+<p>Proste wzorce tworzone są za pomocą znaków, z których ma składać się poszukiwany wynik. Przykładowo wzorzec /abc/ pasuje do kombinacji znaków w łańcuchach znaków tylko wtedy, gdy znaki 'abc' pojawiają się razem i dokładnie w takiej kolejności. Sukcesem zakończy się poszukiwanie tych znaków w łańcuchu "Cześć, znasz literki abc?" i "Najnowszym modelem samolotu jest slabcraft". W obydwu przypadkach występuje podciąg 'abc'. Nie zostaną za to zwrócone żadne wyniki w łańcuchu "abecadło z nieba spadło", ponieważ nie zawiera on podciągu 'abc'.</p>
+
+<h4 id="U.C5.BCywanie_znak.C3.B3w_specjalnych" name="U.C5.BCywanie_znak.C3.B3w_specjalnych">Używanie znaków specjalnych</h4>
+
+<p>When the search for a match requires something more than a direct match, such as finding one or more b's, or finding white space, the pattern includes special characters. For example, the pattern <code>/ab*c/</code> matches any character combination in which a single 'a' is followed by zero or more 'b's (* means 0 or more occurrences of the preceding item) and then immediately followed by 'c'. In the string "cbbabbbbcdebc," the pattern matches the substring 'abbbbc'.</p>
+
+<p>Poniższa tabela zawiera kompletny wykaz znaków specjalnych wraz z opisem stosowanych w wyrażeniach regularnych.</p>
+
+<table class="fullwidth-table">
+ <tbody>
+ <tr>
+ <th>Znak</th>
+ <th>Znaczenie</th>
+ </tr>
+ <tr>
+ <td>\</td>
+ <td>jedno z poniższych:
+ <ul>
+ <li>przed znakami rozumianymi zazwyczaj dosłownie oznacza, że znak ten jest znakiem specjalnym i nie jest rozumiany dosłownie. Na przykład /b/ oznacza znak 'b'. Umieszczenie przed 'b' ukośnika lewego (<em>backslash</em> ) powoduje, że znak ten oznacza ogranicznik słowa.</li>
+ </ul>
+
+ <ul>
+ <li>przed znakami specjalnymi oznacza, że znak ten nie jest specjalny i jest rozumiany dosłownie. Na przykład * jest znakiem specjalnym, który oznacza 0 lub więcej wystąpień znaku poprzedzającego; np. /a*/ oznacza 0 lub więcej znaków 'a'. Aby uzyskać znak dosłowny *, należy poprzedzić go ukośnikiem lewym; np. /a\*a/ oznacza 'a*a'.</li>
+ </ul>
+ </td>
+ </tr>
+ <tr>
+ <td>^</td>
+ <td>Pasuje do początku wpisywanego tekstu. Jeśli flaga multiline (wiele linii) jest ustawiona na true, dodatkowo pasuje do każdej nowej linii.
+ <p>Np. <code>/^A/</code> nie da nam w efekcie 'A' w łańcuchu "an A", ale da nam 'A' w łańcuchu "An A"</p>
+ </td>
+ </tr>
+ <tr>
+ <td>$</td>
+ <td>Pasuje do końca wprowadzanych danych. Jeśli flaga multiline jest ustawiona na true, to pasuje również do każdego zakończenia linii. Np. <code>/t$/</code> zwróci 't' z "eat", ale nie z "eater"</td>
+ </tr>
+ <tr>
+ <td>*</td>
+ <td>Pasuje jeśli poprzedzający znak wystąpił 0 bądź więcej razy.
+ <p>Np. <code>/bo*/</code> zwróci 'boooo' z "A Ghost booooed" oraz 'b' z "A bird warbled", ale nie zwróci nic z łańcucha "A goat grunted".</p>
+ </td>
+ </tr>
+ <tr>
+ <td>+</td>
+ <td>Pasuje jeśli poprzedzający znak wystąpił 1 lub więcej razy. Równoważne z {1,} Np. <code>/a+/</code> dopasuje 'a' z łańcucha "candy" oraz wszystkie literki a w "caaaaaaandy".</td>
+ </tr>
+ <tr>
+ <td>?</td>
+ <td>Pasuje jeśli poprzedzający znak wystąpił raz lub nie wystąpił wcale.
+ <p>Np. <code>/e?le?/</code> dopasuje 'el' w łańcuchu "angel" oraz 'le' w "angle".</p>
+
+ <p>Jeśli ? wystąpi zaraz za *, +, ? lub {}, to znaki te będą zwracały najkrótsze możliwe dopasowania, w przeciwieństwie do zwykłego zachowania, które możemy określić jako zachłanne (zwraca najdłuższe możliwe dopasowania).</p>
+
+ <p>Np. <code>/bo*?/</code> zwróci 'b' z "A Ghost booooed".</p>
+ Znak ten używamy też w<em>lookahead assertions</em> , wyjaśnione w komórkach x(?=y) i x(?!y) w tej tabeli.</td>
+ </tr>
+ <tr>
+ <td>.</td>
+ <td>(kropka) pasuje do każdego pojedynczego znaku oprócz znaku nowej linii. Np. <code>/.n/</code> z łańcucha "nay, an apple is on the tree", dopasuje 'an' i 'on', ale nie 'nay'.</td>
+ </tr>
+ <tr>
+ <td>(x)</td>
+ <td>Matches 'x' and remembers the match. These are called capturing parentheses. For example, <code>/(foo)/</code> matches and remembers 'foo' in "foo bar." The matched substring can be recalled from the resulting array's elements <code>1</code>, ..., <code>n</code>.</td>
+ </tr>
+ <tr>
+ <td>(?:x)</td>
+ <td>Matches 'x' but does not remember the match. These are called non-capturing parentheses. The matched substring can not be recalled from the resulting array's elements <code>1</code>, ..., <code>n</code>.</td>
+ </tr>
+ <tr>
+ <td>x(?=y)</td>
+ <td>Matches 'x' only if 'x' is followed by 'y'. For example, <code>/Jack(?=Sprat)/</code> matches 'Jack' only if it is followed by 'Sprat'. <code>/Jack(?=Sprat|Frost)/</code> matches 'Jack' only if it is followed by 'Sprat' or 'Frost'. However, neither 'Sprat' nor 'Frost' is part of the match results.</td>
+ </tr>
+ <tr>
+ <td>x(?!y)</td>
+ <td>Matches 'x' only if 'x' is not followed by 'y'. For example, <code>/\d+(?!\.)/</code> matches a number only if it is not followed by a decimal point. The regular expression <code>/\d+(?!\.)/.exec("3.141")</code> matches '141' but not '3.141'.</td>
+ </tr>
+ <tr>
+ <td>x|y</td>
+ <td>oznacza 'x' lub 'y'. Na przykład <code>/green|red/</code> pasuje do 'green' w "green apple" i do 'red' w "red apple."</td>
+ </tr>
+ <tr>
+ <td>{n}</td>
+ <td>gdzie n jest liczbą całkowitą dodatnią. Oznacza dokładnie n wystąpień znaku poprzedzającego. Na przykład <code>/a{2}/</code> nie pasuje do 'a' w "candy,", za to pasuje do wszystkich znaków 'a' w "caandy," i pierwszych dwóch znaków 'a' w "caaandy."</td>
+ </tr>
+ <tr>
+ <td>{n,}</td>
+ <td>Where n is a positive integer. Matches at least n occurrences of the preceding character. For example, <code>/a{2,}/</code> doesn't match the 'a' in "candy", but matches all of the a's in "caandy" and in "caaaaaaandy."</td>
+ </tr>
+ <tr>
+ <td>{n,m}</td>
+ <td>Where n and m are positive integers. Matches at least n and at most m occurrences of the preceding character. For example, <code>/a{1,3}/</code> matches nothing in "cndy", the 'a' in "candy," the first two a's in "caandy," and the first three a's in "caaaaaaandy" Notice that when matching "caaaaaaandy", the match is "aaa", even though the original string had more a's in it.</td>
+ </tr>
+ <tr>
+ <td><code>xyz</code></td>
+ <td>zestaw znaków. Pasuje do każdego znaku w nawiasie. Można określić zakres znaków za pomocą łącznika. Na przykład <code>abcd</code> oznacza to samo co <code>a-d</code>. Pasują one do 'b' w "brisket" i do 'c' w "ache".</td>
+ </tr>
+ <tr>
+ <td><code>^xyz</code></td>
+ <td>A negated or complemented character set. That is, it matches anything that is not enclosed in the brackets. You can specify a range of characters by using a hyphen. For example, <code>^abc</code> is the same as <code>^a-c</code>. They initially match 'r' in "brisket" and 'h' in "chop."</td>
+ </tr>
+ <tr>
+ <td><code>\\b</code></td>
+ <td>Matches a backspace. (Not to be confused with \b.)</td>
+ </tr>
+ <tr>
+ <td>\b</td>
+ <td>Matches a word boundary, such as a space or a newline character. (Not to be confused with <code>\\b</code>.) For example, <code>/\bn\w/</code> matches the 'no' in "noonday";<code>/\wy\b/</code> matches the 'ly' in "possibly yesterday."</td>
+ </tr>
+ <tr>
+ <td>\B</td>
+ <td>Matches a non-word boundary. For example, <code>/\w\Bn/</code> matches 'on' in "noonday", and <code>/y\B\w/</code> matches 'ye' in "possibly yesterday."</td>
+ </tr>
+ <tr>
+ <td>\cX</td>
+ <td>Where X is a control character. Matches a control character in a string. For example, <code>/\cM/</code> matches control-M in a string.</td>
+ </tr>
+ <tr>
+ <td>\d</td>
+ <td>Matches a digit character. Equivalent to <code>0-9</code>. For example, <code>/\d/</code> or <code>/0-9/</code> matches '2' in "B2 is the suite number."</td>
+ </tr>
+ <tr>
+ <td>\D</td>
+ <td>Matches any non-digit character. Equivalent to <code>^0-9</code>. For example, <code>/\D/</code> or <code>/^0-9/</code> matches 'B' in "B2 is the suite number."</td>
+ </tr>
+ <tr>
+ <td>\f</td>
+ <td>Matches a form-feed.</td>
+ </tr>
+ <tr>
+ <td>\n</td>
+ <td>Matches a linefeed.</td>
+ </tr>
+ <tr>
+ <td>\r</td>
+ <td>Matches a carriage return.</td>
+ </tr>
+ <tr>
+ <td>\s</td>
+ <td>Matches a single white space character, including space, tab, form feed, line feed. Equivalent to
+ <p><code>\\f\\n\\r\\t\\v\\u00A0\\u2028\\u2029</code>.</p>
+ For example, <code>/\s\w*/</code> matches ' bar' in "foo bar."</td>
+ </tr>
+ <tr>
+ <td>\S</td>
+ <td>Matches a single character other than white space. Equivalent to
+ <p><code>^ \\f\\n\\r\\t\\v\\u00A0\\u2028\\u2029</code>.</p>
+ For example, <code>/\S\w*/</code> matches 'foo' in "foo bar."</td>
+ </tr>
+ <tr>
+ <td>\t</td>
+ <td>Matches a tab.</td>
+ </tr>
+ <tr>
+ <td>\v</td>
+ <td>Matches a vertical tab.</td>
+ </tr>
+ <tr>
+ <td>\w</td>
+ <td>Matches any alphanumeric character including the underscore. Equivalent to <code>A-Za-z0-9_</code>. For example, <code>/\w/</code> matches 'a' in "apple," '5' in "$5.28," and '3' in "3D."</td>
+ </tr>
+ <tr>
+ <td>\W</td>
+ <td>Matches any non-word character. Equivalent to <code>^A-Za-z0-9_</code>. For example, <code>/\W/</code> or <code>/^A-Za-z0-9_/</code> matches '%' in "50%."</td>
+ </tr>
+ <tr>
+ <td>\n</td>
+ <td>Where n is a positive integer. A back reference to the last substring matching the n parenthetical in the regular expression (counting left parentheses). For example, <code>/apple(,)\sorange\1/</code> matches 'apple, orange,' in "apple, orange, cherry, peach."</td>
+ </tr>
+ <tr>
+ <td>\0</td>
+ <td>Matches a NUL character. Do not follow this with another digit.</td>
+ </tr>
+ <tr>
+ <td>\xhh</td>
+ <td>Matches the character with the code hh (two hexadecimal digits)</td>
+ </tr>
+ <tr>
+ <td>\uhhhh</td>
+ <td>Matches the character with the code hhhh (four hexadecimal digits).</td>
+ </tr>
+ </tbody>
+</table>
+
+<p><small><strong>Tabela 4.1: Znaki specjalne w wyrażeniach regularnych.</strong></small></p>
+
+<h4 id="U.C5.BCywanie_nawias.C3.B3w" name="U.C5.BCywanie_nawias.C3.B3w">Używanie nawiasów</h4>
+
+<p>Parentheses around any part of the regular expression pattern cause that part of the matched substring to be remembered. Once remembered, the substring can be recalled for other use, as described in <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Praca_z_wyra%c5%bceniami_regularnymi/U%c5%bcycie_odpowiedniego_znaku">Using Parenthesized Substring Matches</a>.</p>
+
+<p>For example, the pattern <code>/Chapter (\d+)\.\d*/</code> illustrates additional escaped and special characters and indicates that part of the pattern should be remembered. It matches precisely the characters 'Chapter ' followed by one or more numeric characters (\d means any numeric character and + means 1 or more times), followed by a decimal point (which in itself is a special character; preceding the decimal point with \ means the pattern must look for the literal character '.'), followed by any numeric character 0 or more times (\d means numeric character, * means 0 or more times). In addition, parentheses are used to remember the first matched numeric characters.</p>
+
+<p>This pattern is found in "Open Chapter 4.3, paragraph 6" and '4' is remembered. The pattern is not found in "Chapter 3 and 4", because that string does not have a period after the '3'.</p>
+
+<p>To match a substring without causing the matched part to be remembered, within the parentheses preface the pattern with <code>?:</code>. For example, <code>(?:\d+)</code> matches one or more numeric characters but does not remember the matched characters.</p>
+
+<p><br>
+ {{ PreviousNext("Przewodnik_po_języku_JavaScript_1.5:Tworzenie_wyrażenia_regularnego", "Przewodnik_po_języku_JavaScript_1.5:Praca_z_wyrażeniami_regularnymi") }}</p>
diff --git a/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/zastosowanie_obiektu_arguments/index.html b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/zastosowanie_obiektu_arguments/index.html
new file mode 100644
index 0000000000..8422fdf2c0
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/guide/obsolete_pages/przewodnik_po_języku_javascript_1.5/zastosowanie_obiektu_arguments/index.html
@@ -0,0 +1,41 @@
+---
+title: Zastosowanie obiektu arguments
+slug: >-
+ Web/JavaScript/Guide/Obsolete_Pages/Przewodnik_po_języku_JavaScript_1.5/Zastosowanie_obiektu_arguments
+tags:
+ - JavaScript
+ - Przewodnik_JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<h3 id="Zastosowanie_obiektu_arguments" name="Zastosowanie_obiektu_arguments">Zastosowanie obiektu <code>arguments</code></h3>
+<p>Argumenty funkcji będą je utrzymywać je w tablicy. Wewnątrz funkcji, możemy zaadresować lub przydzielić argumenty w następujący sposób:</p>
+<pre>arguments[i]
+</pre>
+<p>gdzie: <code>i</code> jest kolejną liczbą porządkową znajdującą się wewnątrz funkcji, pierwszym argumentem zawsze jest 0 (zero). Więc, pierwszy argument funkcji to <code>arguments{{ mediawiki.external(0) }}</code>. Łączna liczba argumentów jest podana w <code>arguments.length</code>.</p>
+<p>Używając argumentów tablicy (<code>arguments</code>) możesz nazwać większość funkcji wraz ze swoimi argumentami niż formalna deklaracja akceptującą. Często jeśli nie wiesz jak wiele będzie potrzebnych argumentów funkcji. Używaj <code>arguments</code>.length do określenie aktualnie argumentów do funkcji, potrzebnych do opisania każdego argumentu w tablicy <code>arguments</code>.</p>
+<p>Na przykład, stanowią one funkcje, które powiążą kilka łańcuchów danych. Tylko oficjalny argument dla funkcji jest łańcuch, którego specyficzne znaki separacji powiążą odpowiednie elementy. Funkcja jest definiowana następująco:</p>
+<pre>function myConcat(separator) {
+ var result="" // initialize list
+ // iterate through arguments
+ for (var i=1; i&lt;arguments.length; i++) {
+ result += arguments[i] + separator
+ }
+ return result
+}
+</pre>
+<p>Możemy podawać jakiekolwiek liczby argumentów funkcji, i to zostanie utworzona lista używająca każdej pozycji zawartej na liście.</p>
+<pre>// zwraca "red, orange, blue, "
+myConcat(", ","red","orange","blue")
+
+// zwraca "elephant; giraffe; lion; cheetah; "
+myConcat("; ","elephant","giraffe","lion", "cheetah")
+
+// zwraca "sage. basil. oregano. pepper. parsley. "
+myConcat(". ","sage","basil","oregano", "pepper", "parsley")
+</pre>
+<p>Zobacz: <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/Function">Funkcja obiektu</a> w dokumentacji języka JavaScript, aby uzyskać więcej informacji.</p>
+<p><b>JavaScript 1.3 i wersje wcześniejsze</b><br>
+ Argument tablicy jest właściwością obiektu <code>Function</code> i może on być umieszczony przed nazwą funkcji, tak jak poniżej:</p>
+<p><code>functionName.arguments(i)</code></p>
+<p> </p>
diff --git a/files/pl/orphaned/web/javascript/na_początek/index.html b/files/pl/orphaned/web/javascript/na_początek/index.html
new file mode 100644
index 0000000000..44f95f6c62
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/na_początek/index.html
@@ -0,0 +1,903 @@
+---
+title: Na początek
+slug: Web/JavaScript/Na_początek
+tags:
+ - JavaScript
+ - Strony_wymagające_dopracowania
+ - Wszystkie_kategorie
+---
+<div class="note"><strong>UWAGA, UWAGA!</strong>: Pomimo tego, że artykuł jest wywieszony jako artykuł do dopracowania, to mimo to, PROSZĘ go na razie <strong>NIE TŁUMACZYĆ</strong>. Powodem jest to, że tekst w sporej mierze jest już przetłumaczony. Więc po prostu szkoda zapału i zużywania energii na coś co już jest w wersji PL. W ramach tego samego czasu możecie przetłumaczyć coś, czego nie ma na 100% w dopracowanych. <a href="pl/Wikipedysta/Ptak82">Ptak82</a> 17:18, 13 mar 2007 (PDT)</div>
+
+<h3 id="Wprowadzenie" name="Wprowadzenie">Wprowadzenie</h3>
+
+<p>Dlaczego ponowne wprowadzenie? Bo <a href="pl/JavaScript">JavaScript</a> można śmiało określić jako <a class="external" href="http://javascript.crockford.com/javascript.html">najbardziej błędnie rozumiany język programowania (en)</a>. Często wyszydzany, nazywany zabawką, pod swoją kuszącą prostotą chowa on szerokie możliwości. W roku 2005 pojawił się szereg wysokiej jakości aplikacji w JavaScripcie, dowodzących, że pogłębiona znajomość tej technologii to to, czym powinien móc się pochwalić każdy twórca serwisów internetowych.</p>
+
+<p>Wygodnie będzie zacząć od kilku słów na temat historii języka. JavaScript stowrzył w roku 1995 Brendan Eich, programista firmy Netscape. Pierwszą przeglądarką z obsługą JavaScriptu była Netscape 2, wydana na początku 1996 r. Pierwotnie język ten miał się nazywać LiveScript, ale nazwę nieszczęśliwie zmieniono z przyczyn marketingowych - chciano skorzystać z popularności Javy, języka firmy Sun Microsystems, mimo że oba te języki niewiele ze sobą łączy. Nazwa "JavaScript" do dziś jest przyczyną wielu nieporozumień.</p>
+
+<p>Microsoft wydał prawie kompatybilną wersję tego języka pod nazwą JScript razem z przeglądarką Internet Explorer 3 kilka miesięcy później. Firma Netscape zgłosiła język do europejskiej organizacji standaryzacyjnej <a class="external" href="http://www.ecma-international.org/">Ecma International</a>, skutkiem czego było pierwsze wydanie standardu <a href="pl/ECMAScript">ECMAScript</a> w roku 1997. Specyfikację tę szeroko uzupełniono i rozbudowano w roku 1999 i opublikowano jako <a class="external" href="http://www.ecma-international.org/publications/standards/Ecma-262.htm">ECMAScript wydanie 3</a> i od tej pory język ten był w miarę stabilny, nie przechodził większych rewolucji, choć obecnie trwają prace nad wydaniem czwartym.</p>
+
+<p>Stabilność ta to dobra wiadomość dla programistów, jako że wszystkie implementacje miały wiele czasu, by w pełni dojść do w miarę zgodnego stanu. W tym artykule skupiam się wyłącznie na dialekcie z wydania trzeciego. Dla uproszczenia pozostanę w tym artykule przy terminie "JavaScript".</p>
+
+<p>W przeciwieństwie do większości języków, JavaScript nie posiada koncepcji wejścia/wyjścia. Zaprojektowany został jako język skryptowy dla maszyny wirtualnej i to ta maszyna wirtualna ma za zadanie zapewnić mechanizmy komunikacji ze światem zewnętrznym. Najbardziej popularną maszyną wirtualną jest przeglądarka, ale interpretery JavaScriptu można znaleźć np. w programach Adobe Acrobat, Photoshop, silniku Yahoo! Widget i innych.</p>
+
+<h3 id="Przegl.C4.85d" name="Przegl.C4.85d">Przegląd</h3>
+
+<p>Zacznijmy od fundamentów każdego języka programowania: typów danych. Programy w JavaScripcie manipulują wartościami, z których każda należy do konkretnego typu. Typy w JavaScripcie to:</p>
+
+<ul>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/Number">Number</a> - liczby</li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String">String</a> - ciągi znaków (teksty)</li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/Boolean">Boolean</a> - wartości logiczne</li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/Function">Function</a> - funkcje</li>
+ <li><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/Object">Object</a> - obiekty</li>
+</ul>
+
+<p>a także Undefined (wartość niezdefiniowana) i Null, które można uważać za nieco dziwne. Ponadto mamy do dyspozycji tablice - <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/Array">Array</a> - które są szczególnym rodzajem obiektu. Oprócz tego daty - <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/Date">Date</a> i <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/RegExp">wyrażenia regularne</a>, które także są obiektami. Gwoli ścisłości, funkcje także są szczególnymi obiektami.</p>
+
+<p>Diagram typów wygląda zatem następująco:</p>
+
+<ul>
+ <li>Number</li>
+ <li>String</li>
+ <li>Boolean</li>
+ <li>Object
+ <ul>
+ <li>Function</li>
+ <li>Array</li>
+ <li>Date</li>
+ <li>RegExp</li>
+ </ul>
+ </li>
+ <li>Null</li>
+ <li>Undefined</li>
+</ul>
+
+<p>Istnieją także podtypy typu <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/Error">Error</a>, ale pomińmy je, żeby za bardzo nie mieszać i pozostańmy przy pierwszym diagramie.</p>
+
+<h3 id="Liczby" name="Liczby">Liczby</h3>
+
+<p>Zgodnie ze specyfikacją, liczby w JavaScripcie są "64-bitowymi wartościami podwójnej precyzji w formacie IEEE 754". Ma to ciekawe skutki. Na przykład, w JavaScripcie nie ma czegoś takiego jak liczba całkowita, dlatego trzeba zachować nieco ostrożności przy operacjach arytmetycznych, zwłaszcza jeśli przyzwyczajeni jesteśmy do C lub Javy. Należy uważać na takie sytuacje:</p>
+
+<pre class="eval">0.1 + 0.2 = 0.30000000000000004
+</pre>
+
+<p>Dostępne są standardowe <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Operatory/Operatory_arytmetyczne">operatory arytmetyczne</a>, w tym oczywiście dodawanie, odejmowanie, modulo (reszta z dzielenia) itd. Jest także specjalny obiekt <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/Math">Math</a> pozwalający na stosowanie bardziej zaawansowanych funkcji i stałych matematycznych:</p>
+
+<pre class="eval">Math.sin(3.5);
+d = Math.PI * r * r;
+</pre>
+
+<p>Ciąg znaków można skonwertować do liczby korzystając z wbudowanej funkcji <code><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Funkcje/parseInt">parseInt()</a></code>. Funkcja ta może posiadać dodatkowy, drugi argument, który określa podstawę systemu dla tej konwersji. Ten argument warto jednak zawsze podawać:</p>
+
+<pre class="eval">&gt; parseInt("123", 10)
+123
+&gt; parseInt("010", 10)
+10
+</pre>
+
+<p>...żeby nie dostać nieoczekiwanych wyników:</p>
+
+<pre class="eval">&gt; parseInt("010")
+8
+</pre>
+
+<p>Taki wynik otrzymaliśmy dlatego, że funkcja <code>parseInt</code> uznała liczbę w naszym ciągu znaków za ósemkową, bo rozpoczęliśmy ją od znaku "0".</p>
+
+<p>Jeśli chcesz skonwertować liczbę binarną do dziesiętnej, wystarczy zmienić podstawę:</p>
+
+<pre class="eval">&gt; parseInt("11", 2)
+3
+</pre>
+
+<p>Funkcja zwraca specjalną wartość <code><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/W%c5%82asno%c5%9bci/NaN">NaN</a></code> (skrót ang. "Not a Number" - "To nie jest liczba"), jeśli dany ciąg znaków nie jest liczbą:</p>
+
+<pre class="eval">&gt; parseInt("witaj", 10)
+NaN
+</pre>
+
+<p><code>NaN</code> jest toksyczna: wprowadzenie jej do jakiejkolwiek operacji matematycznej spowoduje, że jej wynikiem również będzie <code>NaN</code>:</p>
+
+<pre class="eval">&gt; NaN + 5
+NaN
+</pre>
+
+<p>Aby sprawdzić, czy dana wartość jest <code>NaN</code>, można użyć wbudowanej funkcji <code><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Funkcje/isNaN">isNaN()</a></code>:</p>
+
+<pre class="eval">&gt; isNaN(NaN)
+true
+</pre>
+
+<p>(NaN nie jest bowiem równe nawet samo sobie, <code>NaN!=NaN</code> - przyp. tłum.)</p>
+
+<p>W JavaScripcie istnieją także specjalne wartości reprezentujące plus i minus nieskończoność: <code><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/W%c5%82asno%c5%9bci/Infinity">Infinity</a></code> and <code>-Infinity</code>:</p>
+
+<pre class="eval">&gt; 1 / 0
+Infinity
+&gt; -1 / 0
+-Infinity
+</pre>
+
+<h3 id="Ci.C4.85gi_znak.C3.B3w" name="Ci.C4.85gi_znak.C3.B3w">Ciągi znaków</h3>
+
+<p>Teksty w JavaScripcie to sekwencje znaków. Dokładniej rzecz biorąc, są to sekwencje <a href="pl/Przewodnik_po_j%c4%99zyku_JavaScript_1.5/Unicode">znaków Unicode</a>, w których każdy znak reprezentowany jest przez liczbę 16-bitową. To dobra wiadomość dla wszystkich osób zajmujących się internacjonalizacją.</p>
+
+<p>Jeśli zajdzie potrzeba reprezentowania pojedynczego znaku, stosuje się po prostu ciąg o długości równej 1.</p>
+
+<p>Aby odnaleźć długość ciągu, należy skorzystać z jego własności <code><a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String/length">length</a></code>:</p>
+
+<pre class="eval">&gt; "witaj".length
+5
+</pre>
+
+<p>To nasze pierwsze spotkanie z obiektami JavaScriptu! Czy wspomniałem, że ciągi są też obiektami? Naturalnie, mają też <a href="pl/Dokumentacja_j%c4%99zyka_JavaScript_1.5/Obiekty/String#Metody">metody</a>:</p>
+
+<pre class="eval">&gt; "witaj".charAt(0)
+w
+&gt; "witaj, świecie".replace("witaj", "do zobaczenia")
+do zobaczenia, świecie
+&gt; "witaj".toUpperCase()
+WITAJ
+</pre>
+
+<h3 id="Other_types" name="Other_types">Other types</h3>
+
+<p>JavaScript distinguishes between <code>null</code>, which is an object of type 'object' that indicates a deliberate non-value, and <code>undefined</code>, which is an object of type 'undefined' that indicates an uninitialized value — that is, a value hasn't even been assigned yet. We'll talk about variables later, but in JavaScript it is possible to declare a variable without assigning a value to it. If you do this, the variable's type is <code>undefined</code>.</p>
+
+<p>JavaScript has a boolean type, with possible values <code>true</code> and <code>false</code> (both of which are keywords). Any value can be converted to a boolean according to the following rules:</p>
+
+<ol>
+ <li><code>false</code>, <code>0</code>, the empty string (<code>""</code>), <code>NaN</code>, <code>null</code>, and <code>undefined</code> all become <code>false</code></li>
+ <li>all other values become <code>true</code></li>
+</ol>
+
+<p>You can perform this conversion explicitly using the <code>Boolean()</code> function:</p>
+
+<pre class="eval">&gt; Boolean("")
+false
+&gt; Boolean(234)
+true
+</pre>
+
+<p>However, this is rarely necessary, as JavaScript will silently perform this conversion when it expects a boolean, such as in an <code>if</code> statement (see below). For this reason, we sometimes speak simply of "true values" and "false values," meaning values that become <code>true</code> and <code>false</code>, respectively, when converted to booleans. Alternatively, such values can be called "truthy" and "falsy," respectively.</p>
+
+<p>Boolean operations such as <code>&amp;&amp;</code> (logical<em>and</em>), <code>||</code> (logical<em>or</em>), and <code>!</code> (logical<em>not</em>) are supported; see below.</p>
+
+<h3 id="Variables" name="Variables">Variables</h3>
+
+<p>New variables in JavaScript are declared using the <code><a href="pl/Core_JavaScript_1.5_Reference/Statements/var">var</a></code> keyword:</p>
+
+<pre class="eval">var a;
+var name = "simon";
+</pre>
+
+<p>If you declare a variable without assigning any value to it, its type is <code>undefined</code>. <span class="comment">should note the absence of block-scoping in JS</span></p>
+
+<h3 id="Operators" name="Operators">Operators</h3>
+
+<p>JavaScript's numeric operators are <code>+</code>, <code>-</code>, <code>*</code>, <code>/</code> and <code>%</code> - which is the remainder operator. Values are assigned using <code>=</code>, and there are also compound assignment statements such as <code>+=</code> and <code>-=</code>. These extend out to <code>x = x<em>operator</em> y</code>.</p>
+
+<pre class="eval">x += 5
+x = x + 5
+</pre>
+
+<p>You can use <code>++</code> and <code>--</code> to increment and decrement respectively. These can be used as prefix or postfix operators.</p>
+
+<p>The <a href="pl/Core_JavaScript_1.5_Reference/Operators/String_Operators"><code>+</code> operator</a> also does string concatenation:</p>
+
+<pre class="eval">&gt; "hello" + " world"
+hello world
+</pre>
+
+<p>If you add a string to a number (or other value) everything is converted in to a string first. This might catch you out:</p>
+
+<pre class="eval">&gt; "3" + 4 + 5
+345
+&gt; 3 + 4 + "5"
+75
+</pre>
+
+<p>Adding an empty string to something is a useful way of converting it.</p>
+
+<p><a href="pl/Core_JavaScript_1.5_Reference/Operators/Comparison_Operators">Comparisons</a> in JavaScript can be made using <code>&lt;</code>, <code>&gt;</code>, <code>&lt;=</code> and <code>&gt;=</code>. These work for both strings and numbers. Equality is a little less straightforward. The double-equals operator performs type coercion if you give it different types, with sometimes interesting results:</p>
+
+<pre class="eval">&gt; "dog" == "dog"
+true
+&gt; 1 == true
+true
+</pre>
+
+<p>To avoid type coercion, use the triple-equals operator:</p>
+
+<pre class="eval">&gt; 1 === true
+false
+&gt; true === true
+true
+</pre>
+
+<p>There are also <code>!=</code> and <code>!==</code> operators.</p>
+
+<p>JavaScript also has <a href="pl/Core_JavaScript_1.5_Reference/Operators/Bitwise_Operators">bitwise operations</a>. If you want to use them, they're there.</p>
+
+<h3 id="Control_structures" name="Control_structures">Control structures</h3>
+
+<p>JavaScript has a similar set of control structures to other languages in the C family. Conditional statements are supported by <code>if</code> and <code>else</code>; you can chain them together if you like:</p>
+
+<pre class="eval">var name = "kittens";
+if (name == "puppies") {
+ name += "!";
+} else if (name == "kittens") {
+ name += "!!";
+} else {
+ name = "!" + name;
+}
+name == "kittens!!"
+</pre>
+
+<p>JavaScript has <code>while</code> loops and <code>do-while</code> loops. The first is good for basic looping; the second for loops where you wish to ensure that the body of the loop is executed at least once:</p>
+
+<pre class="eval">while (true) {
+ // an infinite loop!
+}
+
+do {
+ var input = get_input();
+} while (inputIsNotValid(input))
+</pre>
+
+<p>JavaScript's <code>for</code> loop is the same as that in C and Java: it lets you provide the control information for your loop on a single line.</p>
+
+<pre class="eval">for (var i = 0; i &lt; 5; i++) {
+ // Will execute 5 times
+}
+</pre>
+
+<p>The <code>&amp;&amp;</code> and <code>||</code> operators use short-circuit logic, which means whether they will execute their second operand is dependent on the first. This is useful for checking for null objects before accessing their attributes:</p>
+
+<pre class="eval">var name = o &amp;&amp; o.getName();
+</pre>
+
+<p>Or for setting default values:</p>
+
+<pre class="eval">var name = otherName || "default";
+</pre>
+
+<p>JavaScript has a tertiary operator for one-line conditional statements:</p>
+
+<pre class="eval">var allowed = (age &gt; 18) ? "yes" : "no";
+</pre>
+
+<p>The switch statement can be used for multiple branches based on a number or string:</p>
+
+<pre class="eval">switch(action) {
+ case 'draw':
+ drawit();
+ break;
+ case 'eat':
+ eatit();
+ break;
+ default:
+ donothing();
+}
+</pre>
+
+<p>If you don't add a <code>break</code> statement, execution will "fall through" to the next level. This is very rarely what you want - in fact it's worth specifically labelling deliberate fallthrough with a comment if you really meant it to aid debugging:</p>
+
+<pre class="eval">switch(a) {
+ case 1: // fallthrough
+ case 2:
+ eatit();
+ break;
+ default:
+ donothing();
+}
+</pre>
+
+<p>The default clause is optional. You can have expressions in both the switch part and the cases if you like; comparisons take place between the two using the <code>===</code> operator:</p>
+
+<pre class="eval">switch(1 + 3):
+ case 2 + 2:
+ yay();
+ break;
+ default:
+ neverhappens();
+}
+</pre>
+
+<h3 id="Objects" name="Objects">Objects</h3>
+
+<p>JavaScript objects are simply collections of name-value pairs. As such, they are similar to:</p>
+
+<ul>
+ <li>Dictionaries in Python</li>
+ <li>Hashes in Perl and Ruby</li>
+ <li>Hash tables in C and C++</li>
+ <li>HashMaps in Java</li>
+ <li>Associative arrays in PHP</li>
+</ul>
+
+<p>The fact that this data structure is so widely used is a testament to its versatility. Since everything (bar core types) in JavaScript is an object, any JavaScript program naturally involves a great deal of hash table lookups. It's a good thing they're so fast!</p>
+
+<p>The "name" part is a JavaScript string, while the value can be any JavaScript value - including more objects. This allows you to build data structures of arbitrary complexity.</p>
+
+<p>There are two basic ways to create an empty object:</p>
+
+<pre class="eval">var obj = new Object();
+</pre>
+
+<p>And:</p>
+
+<pre class="eval">var obj = {};
+</pre>
+
+<p>These are semantically equivalent; the second is called object literal syntax, and is more convenient. Object literal syntax was not present in very early versions of the language which is why you see so much code using the old method.</p>
+
+<p>Once created, an object's properties can again be accessed in one of two ways:</p>
+
+<pre class="eval">obj.name = "Simon"
+var name = obj.name;
+</pre>
+
+<p>And...</p>
+
+<pre class="eval">obj["name"] = "Simon";
+var name = obj["name"];
+</pre>
+
+<p>These are also semantically equivalent. The second method has the advantage that the name of the property is provided as a string, which means it can be calculated at run-time. It can also be used to set and get properties with names that are <a href="pl/Core_JavaScript_1.5_Reference/Reserved_Words">reserved words</a>:</p>
+
+<pre class="eval">obj.for = "Simon"; // Syntax error, because 'for' is a reserved word
+obj["for"] = "Simon"; // works fine
+</pre>
+
+<p>Object literal syntax can be used to initialise an object in its entirety:</p>
+
+<pre class="eval">var obj = {
+ name: "Carrot",
+ "for": "Max",
+ details: {
+ color: "orange",
+ size: 12
+ }
+}
+</pre>
+
+<p>Attribute access can be chained together:</p>
+
+<pre class="eval">&gt; obj.details.color
+orange
+&gt; obj["details"]["size"]
+12
+</pre>
+
+<h3 id="Arrays" name="Arrays">Arrays</h3>
+
+<p>Arrays in JavaScript are actually a special type of object. They work very much like regular objects (numerical properties can naturally be accessed only using [] syntax) but they have one magic property called '<code>length</code>'. This is always one more than the highest index in the array.</p>
+
+<p>The old way of creating arrays is as follows:</p>
+
+<pre class="eval">&gt; var a = new Array();
+&gt; a[0] = "dog";
+&gt; a[1] = "cat";
+&gt; a[2] = "hen";
+&gt; a.length
+3
+</pre>
+
+<p>A more convenient notation is to use an array literal:</p>
+
+<pre class="eval">&gt; var a = ["dog", "cat", "hen"];
+&gt; a.length
+3
+</pre>
+
+<p>Leaving a trailing comma at the end of an array literal is inconsistent across browsers, so don't do it.</p>
+
+<p>Note that <code>array.length</code> isn't necessarily the number of items in the array. Consider the following:</p>
+
+<pre class="eval">&gt; var a = ["dog", "cat", "hen"];
+&gt; a[100] = "fox";
+&gt; a.length
+101
+</pre>
+
+<p>Remember - the length of the array is one more than the highest index.</p>
+
+<p>If you query a non-existent array index, you get <code>undefined</code>:</p>
+
+<pre class="eval">&gt; typeof(a[90])
+undefined
+</pre>
+
+<p>If you take the above into account, you can iterate over an array using the following:</p>
+
+<pre class="eval">for (var i = 0; i &lt; a.length; i++) {
+ // Do something with a[i]
+}
+</pre>
+
+<p>This is slightly inefficient as you are looking up the length property once every loop. An improvement is this:</p>
+
+<pre class="eval">for (var i = 0, len = a.length; i &lt; len; i++) {
+ // Do something with a[i]
+}
+</pre>
+
+<p>An even nicer idiom is:</p>
+
+<pre class="eval">for (var i = 0, item; item = a[i]; i++) {
+ // Do something with item
+}
+</pre>
+
+<p>Here we are setting up two variables. The assignment in the middle part of the <code>for</code> loop is also tested for truthfulness - if it succeeds, the loop continues. Since <code>i</code> is incremented each time, items from the array will be assigned to item in sequential order. The loop stops when a "falsy" item is found (such as <code>undefined</code>).</p>
+
+<p>Note that this trick should only be used for arrays which you know do not contain "falsy" values (arrays of objects or <a href="pl/DOM">DOM</a> nodes for example). If you are iterating over numeric data that might include a 0 or string data that might include the empty string you should use the <code>i, j</code> idiom instead.</p>
+
+<p>Another way to iterate is to use the <code><a href="pl/Core_JavaScript_1.5_Reference/Statements/for...in">for...in</a></code> loop. Note that if someone added new properties to <code>Array.prototype</code>, they will also be iterated over by this loop:</p>
+
+<pre class="eval">for (var i in a) {
+ // Do something with a[i]
+}
+</pre>
+
+<p>If you want to append an item to an array, the safest way to do it is like this:</p>
+
+<pre class="eval">a[a.length] = item; // same as a.push(item);
+</pre>
+
+<p>Since <code>a.length</code> is one more than the highest index, you can be assured that you are assigning to an empty position at the end of the array.</p>
+
+<p>Arrays come with a number of methods:</p>
+
+<pre class="eval">a.toString(), a.toLocaleString(), a.concat(item, ..), a.join(sep),
+a.pop(), a.push(item, ..), a.reverse(), a.shift(), a.slice(start, end),
+a.sort(cmpfn), a.splice(start, delcount, [item]..), a.unshift([item]..)
+</pre>
+
+<ul>
+ <li><code>concat</code> returns a new array with the items added on to it.</li>
+ <li><code>pop</code> removes and returns the last item</li>
+ <li><code>push</code> adds one or more items to the end (like our <code>ar{{ mediawiki.external('ar.length') }}</code> idiom)</li>
+ <li><code>slice</code> returns a sub-array</li>
+ <li><code>sort</code> takes an optional comparison function</li>
+ <li><code>splice</code> lets you modify an array by deleting a section and replacing it with more items</li>
+ <li><code>unshift</code> prepends items to the start of the array</li>
+</ul>
+
+<h3 id="Functions" name="Functions">Functions</h3>
+
+<p>Along with objects, functions are the core component in understanding JavaScript. The most basic function couldn't be much simpler:</p>
+
+<pre class="eval">function add(x, y) {
+ var total = x + y;
+ return total;
+}
+</pre>
+
+<p>This demonstrates everything there is to know about basic functions. A JavaScript function can take 0 or more named parameters. The function body can contain as many statements as you like, and can declare its own variables which are local to that function. The <code>return</code> statement can be used to return a value at any time, terminating the function. If no return statement is used (or an empty return with no value), JavaScript returns <code>undefined</code>.</p>
+
+<p>The named parameters turn out to be more like guidelines than anything else. You can call a function without passing the parameters it expects, in which case they will be set to <code>undefined</code>.</p>
+
+<pre class="eval">&gt; add()
+NaN // You can't perform addition on undefined
+</pre>
+
+<p>You can also pass in more arguments than the function is expecting:</p>
+
+<pre class="eval">&gt; add(2, 3, 4)
+5 // added the first two; 4 was ignored
+</pre>
+
+<p>That may seem a little silly, but functions have access to an additional variable inside their body called <a href="pl/Core_JavaScript_1.5_Reference/Functions/arguments"><code>arguments</code></a>, which is an array-like object holding all of the values passed to the function. Let's re-write the add function to take as many values as we want:</p>
+
+<pre class="eval">function add() {
+ var sum = 0;
+ for (var i = 0, j = arguments.length; i &lt; j; i++) {
+ sum += arguments[i];
+ }
+ return sum;
+}
+
+&gt; add(2, 3, 4, 5)
+14
+</pre>
+
+<p>That's really not any more useful than writing <code>2 + 3 + 4 + 5</code> though. Let's create an averaging function:</p>
+
+<pre class="eval">function avg() {
+ var sum = 0;
+ for (var i = 0, j = arguments.length; i &lt; j; i++) {
+ sum += arguments[i];
+ }
+ return sum / arguments.length;
+}
+&gt; avg(2, 3, 4, 5)
+3.5
+</pre>
+
+<p>This is pretty useful, but introduces a new problem. The <code>avg()</code> function takes a comma separated list of arguments - but what if you want to find the average of an array? You could just rewrite the function as follows:</p>
+
+<pre class="eval">function avgArray(arr) {
+ var sum = 0;
+ for (var i = 0, j = arr.length; i &lt; j; i++) {
+ sum += arr[i];
+ }
+ return sum / arr.length;
+}
+&gt; avgArray([2, 3, 4, 5])
+3.5
+</pre>
+
+<p>But it would be nice to be able to reuse the function that we've already created. Luckily, JavaScript lets you call a function and call it with an arbitrary array of arguments, using the <a href="pl/Core_JavaScript_1.5_Reference/Global_Objects/Function/apply"><code>apply()</code></a> method of any function object.</p>
+
+<pre class="eval">&gt; avg.apply(null, [2, 3, 4, 5])
+3.5
+</pre>
+
+<p>The second argument to <code>apply()</code> is the array to use as arguments; the first will be discussed later on. This emphasizes the fact that functions are objects too.</p>
+
+<p>JavaScript lets you create anonymous functions.</p>
+
+<pre class="eval">var avg = function() {
+ var sum = 0;
+ for (var i = 0, j = arguments.length; i &lt; j; i++) {
+ sum += arguments[i];
+ }
+ return sum / arguments.length;
+}
+</pre>
+
+<p>This is semantically equivalent to the <code>function avg()</code> form. It's extremely powerful, as it lets you put a full function definition anywhere that you would normally put an expression. This enables all sorts of clever tricks. Here's a way of "hiding" some local variables - like block scope in C:</p>
+
+<pre class="eval">&gt; var a = 1;
+&gt; var b = 2;
+&gt; (function() {
+ var b = 3;
+ a += b;
+})();
+&gt; a
+4
+&gt; b
+2
+</pre>
+
+<p>JavaScript allows you to call functions recursively. This is particularly useful for dealing with tree structures, such as you get in the browser <a href="pl/DOM">DOM</a>.</p>
+
+<pre class="eval">function countChars(elm) {
+ if (elm.nodeType == 3) { // TEXT_NODE
+ return elm.nodeValue.length;
+ }
+ var count = 0;
+ for (var i = 0, child; child = elm.childNodes[i]; i++) {
+ count += countChars(child);
+ }
+ return count;
+}
+</pre>
+
+<p>This highlights a potential problem with anonymous functions: how do you call them recursively if they don't have a name? The answer lies with the <code>arguments</code> object, which in addition to acting as a list of arguments also provides a property called <code>arguments.callee</code>. This always refers to the current function, and hence can be used to make recursive calls:</p>
+
+<pre class="eval">var charsInBody = (function(elm) {
+ if (elm.nodeType == 3) { // TEXT_NODE
+ return elm.nodeValue.length;
+ }
+ var count = 0;
+ for (var i = 0, child; child = elm.childNodes[i]; i++) {
+ count += arguments.callee(child);
+ }
+ return count;
+})(document.body);
+</pre>
+
+<p>Since <code>arguments.callee</code> is the current function, and all functions are objects, you can use <code>arguments.callee</code> to save information across multiple calls to the same function. Here's a function that remembers how many times it has been called:</p>
+
+<pre class="eval">function counter() {
+ if (!arguments.callee.count) {
+ arguments.callee.count = 0;
+ }
+ return arguments.callee.count++;
+}
+
+&gt; counter()
+0
+&gt; counter()
+1
+&gt; counter()
+2
+</pre>
+
+<h3 id="Custom_objects" name="Custom_objects">Custom objects</h3>
+
+<p>In classic Object Oriented Programming, objects are collections of data and methods that operate on that data. Let's consider a person object with first and last name fields. There are two ways in which their name might be displayed: as "first last" or as "last, first". Using the functions and objects that we've discussed previously, here's one way of doing it:</p>
+
+<pre class="eval">function makePerson(first, last) {
+ return {
+ first: first,
+ last: last
+ }
+}
+function personFullName(person) {
+ return person.first + ' ' + person.last;
+}
+function personFullNameReversed(person) {
+ return person.last + ', ' + person.first
+}
+&gt; s = makePerson("Simon", "Willison");
+&gt; personFullName(s)
+Simon Willison
+&gt; personFullNameReversed(s)
+Willison, Simon
+</pre>
+
+<p>This works, but it's pretty ugly. You end up with dozens of functions in your global namespace. What we really need is a way to attach a function to an object. Since functions are objects, this is easy:</p>
+
+<pre class="eval">function makePerson(first, last) {
+ return {
+ first: first,
+ last: last,
+ fullName: function() {
+ return this.first + ' ' + this.last;
+ },
+ fullNameReversed: function() {
+ return this.last + ', ' + this.first;
+ }
+ }
+}
+&gt; s = makePerson("Simon", "Willison")
+&gt; s.fullName()
+Simon Willison
+&gt; s.fullNameReversed()
+Willison, Simon
+</pre>
+
+<p>There's something here we haven't seen before: the '<code><a href="pl/Core_JavaScript_1.5_Reference/Operators/Special_Operators/this_Operator">this</a></code>' keyword. Used inside a function, '<code>this</code>' refers to the current object. What that actually means is specified by the way in which you called that function. If you called it using <a href="pl/Core_JavaScript_1.5_Reference/Operators/Member_Operators">dot notation or bracket notation</a> on an object, that object becomes '<code>this</code>'. If dot notation wasn't used for the call, '<code>this</code>' refers to the global object. This is a frequent cause of mistakes. For example:</p>
+
+<pre class="eval">&gt; s = makePerson("Simon", "Willison")
+&gt; var fullName = s.fullName;
+&gt; fullName()
+undefined undefined
+</pre>
+
+<p>When we call <code>fullName()</code>, '<code>this</code>' is bound to the global object. Since there are no global variables called <code>first</code> or <code>last</code> we get <code>undefined</code> for each one.</p>
+
+<p>We can take advantage of the '<code>this</code>' keyword to improve our <code>makePerson</code> function:</p>
+
+<pre class="eval">function Person(first, last) {
+ this.first = first;
+ this.last = last;
+ this.fullName = function() {
+ return this.first + ' ' + this.last;
+ }
+ this.fullNameReversed = function() {
+ return this.last + ', ' + this.first;
+ }
+}
+var s = new Person("Simon", "Willison");
+</pre>
+
+<p>We've introduced another keyword: '<code><a href="pl/Core_JavaScript_1.5_Reference/Operators/Special_Operators/new_Operator">new</a></code>'. <code>new</code> is strongly related to '<code>this</code>'. What it does is it creates a brand new empty object, and then calls the function specified, with '<code>this</code>' set to that new object. Functions that are designed to be called by '<code>new</code>' are called constructor functions. Common practise is to capitalise these functions as a reminder to call them with <code>new</code>.</p>
+
+<p>Our person objects are getting better, but there are still some ugly edges to them. Every time we create a person object we are creating two brand new function objects within it - wouldn't it be better if this code was shared?</p>
+
+<pre class="eval">function personFullName() {
+ return this.first + ' ' + this.last;
+}
+function personFullNameReversed() {
+ return this.last + ', ' + this.first;
+}
+function Person(first, last) {
+ this.first = first;
+ this.last = last;
+ this.fullName = personFullName;
+ this.fullNameReversed = personFullNameReversed;
+}
+</pre>
+
+<p>That's better: we are creating the method functions only once, and assigning references to them inside the constructor. Can we do any better than that? The answer is yes:</p>
+
+<pre class="eval">function Person(first, last) {
+ this.first = first;
+ this.last = last;
+}
+Person.prototype.fullName = function() {
+ return this.first + ' ' + this.last;
+}
+Person.prototype.fullNameReversed = function() {
+ return this.last + ', ' + this.first;
+}
+</pre>
+
+<p><code>Person.prototype</code> is an object shared by all instances of <code>Person</code>. It forms part of a lookup chain (that has a special name, "prototype chain"): any time you attempt to access a property of <code>Person</code> that isn't set, JavaScript will check <code>Person.prototype</code> to see if that property exists there instead. As a result, anything assigned to <code>Person.prototype</code> becomes available to all instances of that constructor via the <code>this</code> object.</p>
+
+<p>This is an incredibly powerful tool. JavaScript lets you modify something's prototype at any time in your program, which means you can add extra methods to existing objects at runtime:</p>
+
+<pre class="eval">&gt; s = new Person("Simon", "Willison");
+&gt; s.firstNameCaps();
+TypeError on line 1: s.firstNameCaps is not a function
+&gt; Person.prototype.firstNameCaps = function() {
+ return this.first.toUpperCase()
+}
+&gt; s.firstNameCaps()
+SIMON
+</pre>
+
+<p>Interestingly, you can also add things to the prototype of built-in JavaScript objects. Let's add a method to <code>String</code> that returns that string in reverse:</p>
+
+<pre class="eval">&gt; var s = "Simon";
+&gt; s.reversed()
+TypeError on line 1: s.reversed is not a function
+&gt; String.prototype.reversed = function() {
+ var r = "";
+ for (var i = this.length - 1; i &gt;= 0; i--) {
+ r += this[i];
+ }
+ return r;
+}
+&gt; s.reversed()
+nomiS
+</pre>
+
+<p>Our new method even works on string literals!</p>
+
+<pre class="eval">&gt; "This can now be reversed".reversed()
+desrever eb won nac sihT
+</pre>
+
+<p>As I mentioned before, the prototype forms part of a chain. The root of that chain is <code>Object.prototype</code>, whose methods include <code>toString()</code> - it is this method that is called when you try to represent an object as a string. This is useful for debugging our <code>Person</code> objects:</p>
+
+<pre class="eval">&gt; var s = new Person("Simon", "Willison");
+&gt; s
+[object Object]
+&gt; Person.prototype.toString = function() {
+ return '&lt;Person: ' + this.fullName() + '&gt;';
+}
+&gt; s
+&lt;Person: Simon Willison&gt;
+</pre>
+
+<p>Remember how <code>avg.apply()</code> had a null first argument? We can revisit that now. The first argument to <code>apply()</code> is the object that should be treated as '<code>this</code>'. For example, here's a trivial implementation of '<code>new</code>':</p>
+
+<pre class="eval">function trivialNew(constructor) {
+ var o = {}; // Create an object
+ constructor.apply(o, arguments);
+ return o;
+}
+</pre>
+
+<p>This isn't an exact replica of <code>new</code> as it doesn't set up the prototype chain. <code>apply()</code> is difficult to illustrate - it's not something you use very often, but it's useful to know about.</p>
+
+<p><code>apply()</code> has a sister function named <a href="pl/Core_JavaScript_1.5_Reference/Global_Objects/Function/call"><code>call</code></a>, which again lets you set '<code>this</code>' but takes an expanded argument list as opposed to an array.</p>
+
+<pre class="eval">function lastNameCaps() {
+ return this.last.toUpperCase();
+}
+var s = new Person("Simon", "Willison");
+lastNameCaps.call(s);
+// Is the same as:
+s.lastNameCaps = lastNameCaps;
+s.lastNameCaps();
+</pre>
+
+<h3 id="Inner_functions" name="Inner_functions">Inner functions</h3>
+
+<p>JavaScript function declarations are allowed inside other functions. We've seen this once before, with an earlier <code>makePerson()</code> function. An important detail of nested functions in JavaScript is that they can access variables in their parent function's scope:</p>
+
+<pre class="eval">function betterExampleNeeded() {
+ var a = 1;
+ function oneMoreThanA() {
+ return a + 1;
+ }
+ return oneMoreThanA();
+}
+</pre>
+
+<p>This provides a great deal of utility in writing more maintainable code. If a function relies on one or two other functions that are not useful to any other part of your code, you can nest those utility functions inside the function that will be called from elsewhere. This keeps the number of functions that are in the global scope down, which is always a good thing.</p>
+
+<p>This is also a great counter to the lure of global variables. When writing complex code it is often tempting to use global variables to share values between multiple functions - which leads to code that is hard to maintain. Nested functions can share variables in their parent, so you can use that mechanism to couple functions together when it makes sense without polluting your global namespace - 'local globals' if you like. This technique should be used with caution, but it's a useful ability to have.</p>
+
+<h3 id="Closures" name="Closures">Closures</h3>
+
+<p>This leads us to one of the most powerful abstractions that JavaScript has to offer - but also the most potentially confusing. What does this do?</p>
+
+<pre class="eval">function makeAdder(a) {
+ return function(b) {
+ return a + b;
+ }
+}
+x = makeAdder(5);
+y = makeAdder(20);
+x(6)
+?
+y(7)
+?
+</pre>
+
+<p>The name of the <code>makeAdder</code> function should give it away: it creates new 'adder' functions, which when called with one argument add it to the argument that they were created with.</p>
+
+<p>What's happening here is pretty much the same as was happening with the inner functions earlier on: a function defined inside another function has access to the outer function's variables. The only difference here is that the outer function has returned, and hence common sense would seem to dictate that its local variables no longer exist. But they<em>do</em> still exist - otherwise the adder functions would be unable to work. What's more, there are two different "copies" of <code>makeAdder</code>'s local variables - one in which <code>a</code> is 5 and one in which <code>a</code> is 20.</p>
+
+<p>Here's what's actually happening. Whenever JavaScript executes a function, a 'scope' object is created to hold the local variables created within that function. It is initialised with any variables passed in as function parameters. This is similar to the global object that all global variables and functions live in, but with a couple of important differences: firstly, a brand new scope object is created every time a function starts executing, and secondly, unlike the global object (which in browsers is accessible as window) these scope objects cannot be directly accessed from your JavaScript code. There is no mechanism for iterating over the properties of the current scope object for example.</p>
+
+<p>So when <code>makeAdder</code> is called, a scope object is created with one property: <code>a</code>, which is the argument passed to the <code>makeAdder</code> function. <code>makeAdder</code> then returns a newly created function. Normally JavaScript's garbage collector would clean up the scope object created for <code>makeAdder</code> at this point, but the returned function maintains a reference back to that scope object. As a result, the scope object will not be garbage collected until there are no more references to the function object that <code>makeAdder</code> returned.</p>
+
+<p>Scope objects form a chain called the scope chain, similar to the prototype chain used by JavaScript's object system.</p>
+
+<p>A closure is the combination of a function and the scope object in which it was created.</p>
+
+<p>Closures let you save state - as such, they can often be used in place of objects.</p>
+
+<h3 id="Memory_leaks" name="Memory_leaks">Memory leaks</h3>
+
+<p>An unfortunate side effect of closures is that they make it trivially easy to leak memory in Internet Explorer. JavaScript is a garbage collected language - objects are allocated memory upon their creation and that memory is reclaimed by the browser when no references to an object remain. Objects provided by the host environment are handled by that environment.</p>
+
+<p>Browser hosts need to manage a large number of objects representing the HTML page being presented - the objects of the <a href="pl/DOM">DOM</a>. It is up to the browser to manage the allocation and recovery of these.</p>
+
+<p>Internet Explorer uses its own garbage collection scheme for this, separate from the mechanism used by JavaScript. It is the interaction between the two that can cause memory leaks.</p>
+
+<p>A memory leak in IE occurs any time a circular reference is formed between a JavaScript object and a native object. Consider the following:</p>
+
+<pre class="eval">function leakMemory() {
+ var el = document.getElementById('el');
+ var o = { 'el': el };
+ el.o = o;
+}
+</pre>
+
+<p>The circular reference formed above creates a memory leak; IE will not free the memory used by <code>el</code> and <code>o</code> until the browser is completely restarted.</p>
+
+<p>The above case is likely to go unnoticed; memory leaks only become a real concern in long running applications or applications that leak large amounts of memory due to large data structures or leak patterns within loops.</p>
+
+<p>Leaks are rarely this obvious - often the leaked data structure can have many layers of references, obscuring the circular reference.</p>
+
+<p>Closures make it easy to create a memory leak without meaning to. Consider this:</p>
+
+<pre class="eval">function addHandler() {
+ var el = document.getElementById('el');
+ el.onclick = function() {
+ this.style.backgroundColor = 'red';
+ }
+}
+</pre>
+
+<p>The above code sets up the element to turn red when it is clicked. It also creates a memory leak. Why? Because the reference to <code>el</code> is inadvertently caught in the closure created for the anonymous inner function. This creates a circular reference between a JavaScript object (the function) and a native object (<code>el</code>).</p>
+
+<p>There are a number of workarounds for this problem. The simplest is this:</p>
+
+<pre class="eval">function addHandler() {
+ var el = document.getElementById('el');
+ el.onclick = function() {
+ this.style.backgroundColor = 'red';
+ }
+ el = null;
+}
+</pre>
+
+<p>This works by breaking the circular reference.</p>
+
+<p>Surprisingly, one trick for breaking circular references introduced by a closure is to add another closure:</p>
+
+<pre class="eval">function addHandler() {
+ var clickHandler = function() {
+ this.style.backgroundColor = 'red';
+ }
+ (function() {
+ var el = document.getElementById('el');
+ el.onclick = clickHandler;
+ })();
+}
+</pre>
+
+<p>The inner function is executed straight away, and hides its contents from the closure created with <code>clickHandler</code>.</p>
+
+<p>Another good trick for avoiding closures is breaking circular references during the <code>window.onunload</code> event. Many event libraries will do this for you. Note that doing so disables <a href="pl/Using_Firefox_1.5_caching">bfcache in Firefox 1.5</a>, so you should not register an <code>unload</code> listener in Firefox, unless you have other reasons to do so.</p>
+
+<div class="originaldocinfo">
+<h2 id="Original_Document_Information" name="Original_Document_Information">Original Document Information</h2>
+
+<ul>
+ <li>Author: <a class="external" href="http://simon.incutio.com/">Simon Willison</a></li>
+ <li>Last Updated Date: March 7, 2006</li>
+ <li>Copyright: © 2006 Simon Willison, contributed under the Creative Commons: Attribute-Sharealike 2.0 license.</li>
+ <li>More information: For more information about this tutorial (and for links to the original talk's slides), see Simon's <a class="external" href="http://simon.incutio.com/archive/2006/03/07/etech">Etech weblog post</a>.</li>
+</ul>
+</div>
diff --git a/files/pl/orphaned/web/javascript/reference/global_objects/array/prototype/index.html b/files/pl/orphaned/web/javascript/reference/global_objects/array/prototype/index.html
new file mode 100644
index 0000000000..94cbd2b287
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/reference/global_objects/array/prototype/index.html
@@ -0,0 +1,12 @@
+---
+title: Array.prototype
+slug: Web/JavaScript/Referencje/Obiekty/Array/prototype
+tags:
+ - JavaScript
+translation_of: Web/JavaScript/Reference/Global_Objects/Array/prototype
+---
+<div>{{JSRef("Global_Objects", "Array")}}</div>
+
+<h2 id="Podsumowanie" name="Podsumowanie">Podsumowanie</h2>
+
+<p>Reprezentuje prototyp tego obiektu. Pozwala na dodawanie własności lub metod do wszystkich instancji obiektu. Zobacz {{jsxref("Object.prototype")}}, aby uzyskać więcej informacji.</p>
diff --git a/files/pl/orphaned/web/javascript/referencje/o_tym_dokumencie/konwencje_formatowania_tekstu/index.html b/files/pl/orphaned/web/javascript/referencje/o_tym_dokumencie/konwencje_formatowania_tekstu/index.html
new file mode 100644
index 0000000000..3dbff8627a
--- /dev/null
+++ b/files/pl/orphaned/web/javascript/referencje/o_tym_dokumencie/konwencje_formatowania_tekstu/index.html
@@ -0,0 +1,31 @@
+---
+title: Konwencje formatowania tekstu
+slug: Web/JavaScript/Referencje/O_tym_dokumencie/Konwencje_formatowania_tekstu
+tags:
+ - Dokumentacja_JavaScript
+ - Dokumentacje
+ - JavaScript
+ - Wszystkie_kategorie
+---
+<p> </p>
+<p>Aplikacje w języku JavaScript działają na różnych systemach operacyjnych; informacje zawarte w tym dokumencie dotyczą wszystkich wersji. Nazwy plików i katalogów podawane są w stylu Windows (tzn. do rozdzielania katalogów stosowane są wsteczne ukośniki). Dla wersji Unix ścieżki są takie same, należy tylko zamienić ukośniki wsteczne na ukośniki zwykłe.</p>
+<p>W dokumencie tym uniwersalne lokalizatory zasobów (adresy URL) podawane są w postaci:</p>
+<p><code><span class="nowiki">http://</span><em>serwer</em>.<em>domena</em>/<em>ścieżka</em>/<em>plik.html</em> </code></p>
+<p>W tych adresach URL:</p>
+<ul>
+ <li><em>serwer</em> oznacza nazwę serwera, na którym uruchamiana jest Twoja aplikacja, np. <code>research1</code> albo <code>www</code></li>
+ <li><em>domena</em> oznacza Twoją domenę internetową, taką jak <code>mozilla.org</code> albo <code>po.opole.pl</code></li>
+ <li><em>ścieżka</em> oznacza strukturę katalogów na serwerze</li>
+ <li><em>plik.html</em> oznacza nazwę danego pliku</li>
+</ul>
+<p>Ogólnie rzecz biorąc, elementy pochylone w adresach URL są placeholderami, a elementy w normalnej czcionce o stałej szerokości - literałami.</p>
+<p>W dokumencie tym stosowane są następujące konwencje dotyczące czcionek:</p>
+<ul>
+ <li><code>czcionka o stałej szerokości</code> używana jest w listingach kodu źródłowego i przykładach, opisach elementów API i języka (np. nazwy metod i własności), nazw plików, ścieżek dostępu, nazw katalogów, znaczników HTML oraz każdego innego tekstu, który ma być wpisany z klawiatury (pochylona czcionka o stałej szerokości używana jest dla placeholderów w kodzie źródłowym).</li>
+</ul>
+<ul>
+ <li><em>czcionka pochylona</em> używana jest do tytułów książek, emfazy, nazw zmiennych i ścieżek do plików oraz wyrażeń użytych w sensie dosłownym.</li>
+</ul>
+<ul>
+ <li><strong>czcionka pogrubiona</strong> używana dla terminów słownikowych.</li>
+</ul>