From daa1a2aff136fa9da1fcc97d7da97a2036fabc77 Mon Sep 17 00:00:00 2001 From: Florian Merz Date: Thu, 11 Feb 2021 14:51:47 +0100 Subject: unslug uk: move --- files/uk/glossary/closure/index.html | 46 ++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 files/uk/glossary/closure/index.html (limited to 'files/uk/glossary/closure') diff --git a/files/uk/glossary/closure/index.html b/files/uk/glossary/closure/index.html new file mode 100644 index 0000000000..78ec73f7f8 --- /dev/null +++ b/files/uk/glossary/closure/index.html @@ -0,0 +1,46 @@ +--- +title: Замикання +slug: Glossary/Замикання +tags: + - JavaScript + - Словник +translation_of: Glossary/Closure +--- +

Замикання (англ. closure) — це певний різновид сполучення між {{glossary("scope", "областями видимості")}}, що уможливлює доступ до місцевих (локальних) змінних зовнішнього середовища виконання з новоствореного внутрішнього середовища. У {{glossary("JavaScript")}} всяка {{glossary("function", "функція")}} створює замикання.

+ +

Приклади

+ +

В наступному прикладі наведено безіменну функцію, що має доступ до місцевих змінних зовнішньої функції, що її створила:

+ +
function createSequenceGenerator(begin = 0) {
+  var value = begin;
+
+  return function() {
+    return value++;
+  };
+}
+ +

Місцева змінна value доступна зсередини безіменної функції навіть по завершенню виконання функції createSequenceGenerator, що її створила:

+ +
var seq1 = createSequenceGenerator();
+var seq2 = createSequenceGenerator(1000);
+
+console.log(seq1());  // виводить 0
+console.log(seq1());  // виводить 1
+console.log(seq2());  // виводить 1000
+console.log(seq2());  // виводить 1001
+console.log(seq1());  // виводить 2
+ +

Дізнатись більше

+ +

Загальні відомості

+ + + +

Технічна довідка

+ + -- cgit v1.2.3-54-g00ecf