aboutsummaryrefslogtreecommitdiff
path: root/files/pl/web/javascript/referencje/polecenia/block/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'files/pl/web/javascript/referencje/polecenia/block/index.html')
-rw-r--r--files/pl/web/javascript/referencje/polecenia/block/index.html160
1 files changed, 0 insertions, 160 deletions
diff --git a/files/pl/web/javascript/referencje/polecenia/block/index.html b/files/pl/web/javascript/referencje/polecenia/block/index.html
deleted file mode 100644
index bbc5c7e4fb..0000000000
--- a/files/pl/web/javascript/referencje/polecenia/block/index.html
+++ /dev/null
@@ -1,160 +0,0 @@
----
-title: block
-slug: Web/JavaScript/Referencje/Polecenia/block
-tags:
- - Dokumentacja_JavaScript
- - Dokumentacje
- - JavaScript
- - Wszystkie_kategorie
-translation_of: Web/JavaScript/Reference/Statements/block
----
-<p><strong>Blok instrukcji</strong> jest stosowany do zgrupowania zero lub więcej instrukcji. Blok jest ograniczony parą nawiasów klamrowych i opcjonalnie może posiadać etykietę.</p>
-
-<h2 id="Sk.C5.82adnia" name="Sk.C5.82adnia">Składnia</h2>
-
-<h3 id="Blok">Blok</h3>
-
-<pre class="eval">{ ListaInstrukcji }
-</pre>
-
-<h3 id="Blok_z_etykietą">Blok z etykietą</h3>
-
-<pre>EtykietaBloku: { ListaInstrukcji }</pre>
-
-<h3 id="Parametry" name="Parametry">Parametry</h3>
-
-<dl>
- <dt><code>ListaInstrukcji</code></dt>
- <dd>Instrukcje zgrupowane w bloku.</dd>
- <dt><font face="consolas, Liberation Mono, courier, monospace"><span style="background-color: rgba(220, 220, 220, 0.498039);">EtykietaBloku</span></font></dt>
- <dd>Opcjonalna <a href="/pl/docs/Web/JavaScript/Referencje/Polecenia/etykieta">etykieta</a> dla wizualnej identyfikacji lub jako cel dla <a href="/pl/docs/Web/JavaScript/Referencje/Polecenia/break">break</a>.</dd>
-</dl>
-
-<h2 id="Opis" name="Opis">Opis</h2>
-
-<p>Blok instrukcji nazywany jest również w innych językach <strong>instrukcjami złożonymi</strong>. Pozwala użyć wielu instrukcji tam, gdzie JavaScript pozwala użyć tylko jednej. Składanie instrukcji w bloki jest powszechną praktyką w JavaScript. Za pomocą bloku można uzyskać też efekt przeciwny - brak instrukcji tam, gdzie jest wymagana.</p>
-
-<h3 id="Reguły_zasięgu_bloku">Reguły zasięgu bloku</h3>
-
-<h4 id="Zasięg_var">Zasięg <code>var</code></h4>
-
-<p>Zmienne tworzone poprzez <code>var</code> <strong>nie mają </strong>zasięgu bloku. Zmienne zadeklarowane w bloku są ograniczone do funkcji lub skryptu zawierającego, a efektyoperacji na nich utrzymują się poza samym blokiem. Innymi słowy, instrukcje blokowe nie wprowadzają zakresu. Chociaż "samodzielne" bloki są poprawną składnią, nie chcesz używać niezależnych bloków w JavaScript, ponieważ nie robią tego, co myślisz, że robią, jeśli myślisz, że robią coś takiego jak w C lub Java. Na przykład:</p>
-
-<pre><code>var x = 1;
-{
- var x = 2;
-}
-console.log(x); // zwraca 2</code>
-</pre>
-
-<p>Otrzymujesz 2, ponieważ instrukcja <code>var x = 2</code>, która jest w bloku jest w tym samym zasięgu co instrukcja przed blokiem. W C lub Javie podobny kod zwróciłby 1.</p>
-
-<h4 id="Zasięg_let_i_const">Zasięg <code>let</code> i <code>const</code></h4>
-
-<p>Dla odmiany identyfikatory stworzone z użyciem <a href="en-US/docs/Web/JavaScript/Reference/Statements/let">let</a> i <a href="/pl/docs/Web/JavaScript/Referencje/Polecenia/const">const</a> <strong>posiadają</strong> zakres blokowy:</p>
-
-<pre><code>let x = 1;
-{
- let x = 2;
-}
-console.log(x); // zwraca 1</code>
-</pre>
-
-<p><code><font face="Arial, x-locale-body, sans-serif"><span style="background-color: #ffffff;">Instrukcja </span></font>x = 2</code> jest ograniczona w zakresie bloku, w którym została zdefiniowana.</p>
-
-<p>To samo odnosi się do <code>const</code>:</p>
-
-<pre><code>const c = 1;
-{
- const c = 2;
-}
-console.log(c); // zwraca 1 i nie rzuca wyjątkiem SyntaxError.</code>
-</pre>
-
-<p>Zauważ, że <code>const c = 2</code> nie rzuca wyjątku <code>SyntaxError: Identifier 'c' has already been declared</code>, ponieważ może być zadeklarowane unikalnie w ramach bloku.</p>
-
-<h4 id="Zasięg_funkcji">Zasięg <code>funkcji</code></h4>
-
-<p>Funkcja zadeklarowana w bloku również widzialna jest w zakresie tego bloku:</p>
-
-<pre><code>foo('outside'); // TypeError: foo is not a function
-{
- function foo(location) {
- console.log('foo is called ' + location);
- }
- foo('inside'); // wykonuje się poprawnie i zwraca 'foo is called inside'
-}</code>
-</pre>
-
-<p>Bardziej precyzyjnie mówiąc blok instrukcji zapobiega <a href="/pl/docs/Glossary/Hoisting">Hoisting</a>owi deklaracji funkcji na początek zakresu. Funkcja zachowuje się tak, jakby była zdefiniowana jako wyrażenie funkcji i jako taka jest tylko deklaracją zmiennej, która zostaje podniesiona do góry, na początek zakresu:</p>
-
-<pre><code>foo; // zwraca undefined
-{
- function foo(location) {
- console.log('foo is called ' + location);
- }
- foo('inside'); // wykonuje się poprawnie i zwraca 'foo is called inside'
-}</code></pre>
-
-<p>Konsekwentnie to znaczy, że gdy przeniesiemy wywołanie funkcji poniżej jej deklaracji - nie otrzymamy błędu:</p>
-
-<pre><code>{
- function foo(location) {
- console.log('foo is called ' + location);
- }
- foo('inside'); // works correctly and logs 'foo is called inside'
-}
-foo('outside'); // works correctly and logs 'foo is called outside'</code>
-</pre>
-
-<h2 id="Specyfikacja">Specyfikacja</h2>
-
-<table>
- <tbody>
- <tr>
- <th scope="col">Specification</th>
- <th scope="col">Status</th>
- <th scope="col">Comment</th>
- </tr>
- <tr>
- <td>{{SpecName('ESDraft', '#sec-block', 'Block statement')}}</td>
- <td>{{Spec2('ESDraft')}}</td>
- <td> </td>
- </tr>
- <tr>
- <td>{{SpecName('ES6', '#sec-block', 'Block statement')}}</td>
- <td>{{Spec2('ES6')}}</td>
- <td> </td>
- </tr>
- <tr>
- <td>{{SpecName('ES5.1', '#sec-12.1', 'Block statement')}}</td>
- <td>{{Spec2('ES5.1')}}</td>
- <td> </td>
- </tr>
- <tr>
- <td>{{SpecName('ES3', '#sec-12.1', 'Block statement')}}</td>
- <td>{{Spec2('ES3')}}</td>
- <td> </td>
- </tr>
- <tr>
- <td>{{SpecName('ES1', '#sec-12.1', 'Block statement')}}</td>
- <td>{{Spec2('ES1')}}</td>
- <td>Initial definition. Implemented in JavaScript 1.0.</td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="Kompatybilność_z_przeglądarkami">Kompatybilność z przeglądarkami</h2>
-
-<div class="hidden">
-<p>Tabela zgodności na tej stronie jest generowana na podstawie danych strukturalnych. Jeśli chcesz przyczynić się do danych, sprawdź https://github.com/mdn/browser-compat-data i wyślij nam prośbę o wycofanie.</p>
-</div>
-
-<p>{{Compat("javascript.statements.block")}}</p>
-
-<h2 id="Zobacz_także">Zobacz także</h2>
-
-<ul>
- <li><a href="/pl/docs/Web/JavaScript/Referencje/Polecenia/while">while</a></li>
- <li><a href="/pl/docs/Web/JavaScript/Referencje/Polecenia/if...else">if...else</a></li>
-</ul>