1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
---
title: Потік керування
slug: Glossary/Control_flow
tags:
- JavaScript
- Словник
translation_of: Glossary/Control_flow
---
<p><em>Потік керування (control flow - англ.)</em> - це порядок, у якому комп'ютер виконує інструкції скрипта.</p>
<p>Код виконується у порядку від першого до останнього рядка, крім випадків, коли комп'ютер зустрічає (надзвичайно часто) структури, які змінюють потік керування, такі як умовні конструкції та цикли. </p>
<p>Наприклад, уявіть скрипт, який перевіряє дані користувача, отримані через форму веб-сторінки. Скрипт приймає перевірені дані, але, якщо користувач, скажімо, залишає обов'язкове поле порожнім, скрипт спонукає користувача його заповнити. Щоб зробити це, скрипт використовує {{Glossary("Conditional", "умовну")}} структуру, або <code>if...else</code>, щоб, в залежності від того, чи завершено заповнення форми, виконувався різний код:</p>
<pre class="brush: js">if (field==empty) {
promptUser();
} else {
submitForm();
}</pre>
<p>Типовий скрипт у {{glossary("JavaScript")}} чи {{glossary("PHP")}} (і подібних) включає багато керуючих структур, в тому числі умовних конструкцій, {{Glossary("Loop", "циклів")}} та {{Glossary("Function", "функцій")}}. Частини скрипту також можуть виконуватись, коли виникають {{Glossary("Event", "події")}}.</p>
<p>Наприклад, наведений вище уривок може знаходитись всередині функції, яка запускається, коли користувач натискає на кнопку <strong>Прийняти</strong> на формі. Функція також може містити цикл, який перебирає усі поля форми, перевіряючи їх усі по черзі. Повертаючись до коду у секціях <code>if</code> та <code>else</code>, рядки <code>promptUser</code> та <code>submitForm</code> можуть також бути викликами інших функцій скрипта. Як бачите, контролюючі структури можуть диктувати комплексні потоки виконання навіть кількома рядками коду.</p>
<p>Потік керування означає, що коли ви читаєте скрипт, ви маєте не лише читати його з початку до кінця, але також дивитись на структуру програми й на те, як вона впливає на порядок виконання.</p>
<h2 id="Дізнатись_більше">Дізнатись більше</h2>
<h3 id="Загальні_відомості">Загальні відомості</h3>
<ul>
<li>{{Interwiki("wikipedia", "Потік_керування")}} у Вікіпедії</li>
</ul>
<h3 id="Технічна_довідка">Технічна довідка</h3>
<ul>
<li><a href="/uk/docs/Web/JavaScript/Reference#Control_flow">Довідка JavaScript - Потік керування</a> на MDN</li>
</ul>
<h3 id="Навчання">Навчання</h3>
<ul>
<li><a href="/uk/docs/Web/JavaScript/Guide/Statements">Statements (Control flow)</a> на MDN</li>
</ul>
|