Skip to content

Commit ef2ca1b

Browse files
authored
Update README-ua_UA.md
Fix grammatical typos. UA
1 parent c505dc8 commit ef2ca1b

File tree

1 file changed

+26
-26
lines changed

1 file changed

+26
-26
lines changed

ua-UA/README-ua_UA.md

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
Я публікую щодня завдання з JavaScript в моєму [Instagram](https://www.instagram.com/theavocoder), які також додаю тут!
44

5-
Від базового до просунутого: перевірте, наскільки добре ви знаєте JavaScript, трохи оновлюйте свої знання або підготуйтеся до інтерв'ю! :muscle: :rocket: Щотижня я доповнюю цей репозиторій новими питаннями.
5+
Від базового до просунутого: перевірте, наскільки добре ви знаєте JavaScript, трохи оновіть свої знання або підготуйтеся до інтерв'ю! :muscle: :rocket: Щотижня я доповнюю цей репозиторій новими питаннями.
66

7-
Відповіді знаходяться в згорнутої секції нижче питань. Просто натисни на відповідь, щоб розгорнути. Успіхів! :heart:
7+
Відповіді знаходяться в згорнутій секції нижче питань. Просто натисни на відповідь, щоб розгорнути. Успіхів! :heart:
88

99
- [🇸🇦 العربية](./ar-AR/README_AR.md)
1010
- [🇪🇬 اللغة العامية](./ar-EG/README_ar-EG.md)
@@ -50,7 +50,7 @@ sayHi();
5050

5151
#### Відповідь: D
5252

53-
Усередині функції ми спершу визначаємо змінну `name` за допомогою ключового слова `var`. Це означає, що змінна буде знайдена (область пам'яті під змінну буде виділена під час створення) зі значенням `undefined` за замовчуванням, до тих пір поки виконання коду не дійде до рядка, де визначається змінна. Ми ще не визначили значення `name`, коли намагаємося вивести її в консоль, тому в консолі буде `undefined`.
53+
Всередині функції ми спершу визначаємо змінну `name` за допомогою ключового слова `var`. Це означає, що змінна буде знайдена (область пам'яті під змінну буде виділена під час створення) зі значенням `undefined` за замовчуванням, до тих пір поки виконання коду не дійде до рядка, де визначається змінна. Ми ще не визначили значення `name`, коли намагаємося вивести її в консоль, тому в консолі буде `undefined`.
5454

5555
Змінні, визначені за допомогою `let``const`), також знаходяться, але на відміну від `var`, не <i>створюються</i>. Доступ до них неможливий до тих пір, поки не виконається рядок їх визначення (ініціалізації). Це називається "тимчасова мертва зона". Коли ми намагаємося звернутися до змінних до того моменту як вони визначені, JavaScript видає `ReferenceError`.
5656

@@ -82,7 +82,7 @@ for (let i = 0; i < 3; i++) {
8282

8383
Через черги подій в JavaScript, функція `setTimeout` викликається _після того_ як цикл буде завершено. Так як змінна `i` в першому циклі була визначена за допомогою `var`, вона буде глобальною. У циклі ми кожен раз збільшуємо значення `i` на `1`, використовуючи унарний оператор `++.` До моменту виконання функції `setTimeout` значення `i` дорівнюватиме `3`, як показано в першому прикладі.
8484

85-
У другому циклі змінна `i` визначена за допомогою `let`. Такі змінні (а також `const`) мають блочну область видимості (блок це що завгодно між `{}`). З кожної итерацией `i` матиме нове значення, і кожне значення буде замкнуто в своїй області видимості всередині циклу.
85+
У другому циклі змінна `i` визначена за допомогою `let`. Такі змінні (а також `const`) мають блочну область видимості (блок це що завгодно між `{}`). З кожною ітерацією `i` матиме нове значення, і кожне значення буде замкнуто в своїй області видимості всередині циклу.
8686

8787
</p>
8888
</details>
@@ -114,9 +114,9 @@ shape.perimeter();
114114

115115
#### Відповідь: B
116116

117-
Зауваж, що `diameter` це звичайна функція, в той час як `perimeter` це функція стрілки.
117+
Зауваж, що `diameter` це звичайна функція, в той час як `perimeter` це стрілкова функція.
118118

119-
У стрілочних функцій значення `this` вказує на навколишню область видимості, на відміну від звичайних функцій! Це означає, що при виклику `perimeter` значення `this` у цій функції вказує не на об'єкт `shape`, а на зовнішню область видимості (наприклад, window).
119+
У стрілкових функцій значення `this` вказує на навколишню область видимості, на відміну від звичайних функцій! Це означає, що при виклику `perimeter` значення `this` у цій функції вказує не на об'єкт `shape`, а на зовнішню область видимості (наприклад, window).
120120

121121
У цього об'єкта немає ключа `radius`, тому повертається `undefined`.
122122

@@ -179,7 +179,7 @@ JavaScript інтерпретує (або розпаковує) оператор
179179

180180
`mouse[bird.size]`: Спершу визначається `bird.size`, що дорівнює `"small"`. `mouse["small"]` повертає `true`.
181181

182-
Але із записом через точку так не відбувається. У `mouse` немає ключа `bird`. Таким чином, `mouse.bird` дорівнює `undefined`. Потім ми запитуємо ключ `size`, використовуючи точкову нотацію: `mouse.bird.size`. Так як `mouse.bird` це `undefined`, ми запитуємо `undefined.size`. Це не є дійсним, і ми отримуємо помилку типу: `Can not read property "size" of undefined`.
182+
Але із записом через крапку так не відбувається. У `mouse` немає ключа `bird`. Таким чином, `mouse.bird` дорівнює `undefined`. Потім ми запитуємо ключ `size`, використовуючи крапкову нотацію: `mouse.bird.size`. Так як `mouse.bird` це `undefined`, ми запитуємо `undefined.size`. Це не є дійсним, тому ми отримуємо помилку типу: `Can not read property "size" of undefined`.
183183

184184
</p>
185185
</details>
@@ -306,9 +306,9 @@ console.log(greetign);
306306

307307
#### Відповідь: A
308308

309-
В консолі виведеться об'єкт, тому що ми тільки що створили порожній об'єкт в глобальному об'єкті! Коли ми замість `greeting` написали `greetign`, інтерпретатор JS насправді виконав `global.greetign = {}` (або `window.greetign = {}` в браузері).
309+
В консолі виведеться об'єкт, тому що ми щойно створили порожній об'єкт в глобальному об'єкті! Коли ми замість `greeting` написали `greetign`, інтерпретатор JS насправді виконав `global.greetign = {}` (або `window.greetign = {}` в браузері).
310310

311-
Потрібно використовувати `"use strict"`, щоб уникнути такої поведінки. Ця запис допоможе бути впевненим в тому, що змінна була визначена перед тим як їй присвоїли значення.
311+
Потрібно використовувати `"use strict"`, щоб уникнути такої поведінки. Цей запис допоможе бути впевненим в тому, що змінна була визначена перед тим як їй присвоїли значення.
312312

313313
</p>
314314
</details>
@@ -370,7 +370,7 @@ console.log(member.getFullName());
370370

371371
#### Відповідь: A
372372

373-
Не можна додавати властивості конструктору, як звичайному об'єкту. Якщо потрібно додати фичу всіх об'єктах, то необхідно використовувати прототипи. В даному випадку,
373+
Не можна додавати властивості конструктору, як звичайному об'єкту. Якщо потрібно додати фічу до всіх об'єктів, то необхідно використовувати прототипи. В даному випадку,
374374

375375
```js
376376
Person.prototype.getFullName = function() {
@@ -431,7 +431,7 @@ console.log(sarah);
431431

432432
#### Відповідь: D
433433

434-
Під час фази **захоплення** подія поширюється з елементів батьків до елемента мети. Після досягнення **мети** починається фаза **спливання**.
434+
Під час фази **захоплення** подія поширюється від батьківського елемента до елемента мети. Після досягнення **мети** починається фаза **спливання**.
435435

436436
<img src="https://i.imgur.com/N18oRgd.png" width="200">
437437

@@ -440,7 +440,7 @@ console.log(sarah);
440440

441441
---
442442

443-
###### 14. Все объекты имеют прототипы?
443+
###### 14. Всі об'єкти мають прототипи?
444444

445445
- A: Так
446446
- B: Ні
@@ -479,7 +479,7 @@ sum(1, "2");
479479

480480
JavaScript це **динамічно тіпізірованна мова**: ми не визначаємо тип змінних. Змінні можуть автоматично бути перетворені з одного типу в інший без нашої участі, що називається _неявним приведенням типів_. **Приведення** це перетворення з одного типу в інший.
481481

482-
У цьому прикладі, JavaScript конвертувати число `1` в рядок, щоб операція усередині функції мала сенс і повернула значення. Під час складання числа (`1`) і рядки (`'2'`) число перетворюється до рядка. Ми можемо конкатеніровать рядки ось так: `"Hello" + "World"`. Таким чином, "`1"` + `"2"` повертає "`12"`.
482+
У цьому прикладі, JavaScript конвертувати число `1` в рядок, щоб операція всередині функції мала сенс і повернула значення. Під час складання числа (`1`) і рядки (`'2'`) число перетворюється до рядка. Ми можемо додавати рядки ось так: `"Hello" + "World"`. Таким чином, "`1"` + `"2"` повертає "`12"`.
483483

484484
</p>
485485
</details>
@@ -512,8 +512,8 @@ console.log(number);
512512

513513
**Префіксний** унарний оператор `++`:
514514

515-
1. Інкрементує значення (тепер число дорівнює `1`)
516-
2. Повертає значення (`0`)
515+
1. Інкрементує значення (тепер число дорівнює `2`)
516+
2. Повертає значення (`2`)
517517

518518
Результат: `0 2 2`.
519519

@@ -546,7 +546,7 @@ getPersonInfo`${person} is ${age} years old`;
546546

547547
#### Відповідь: B
548548

549-
При використанні тегованих шаблонних литералов першим аргументом завжди буде масив строкових значень. Залишилися аргументами будуть значення переданих виразів!
549+
При використанні тегованих шаблонних літералів першим аргументом завжди буде масив строкових значень. Решта аргументів будуть значення мати переданих виразів!
550550

551551
</p>
552552
</details>
@@ -578,9 +578,9 @@ checkAge({ age: 18 });
578578

579579
#### Відповідь: C
580580

581-
В операціях порівняння примітиви порівнюються за їх _значенням_, а об'єкти по _посиланнях_. JavaScript перевіряє, щоб об'єкти вказували на одну і ту ж область пам'яті.
581+
В операціях порівняння примітиви порівнюються за їх _значенням_, а об'єкти за _посиланнями_. JavaScript перевіряє, щоб об'єкти вказували на одну і ту ж область пам'яті.
582582

583-
Порівнянні об'єкти в нашому прикладі не такі: об'єкт, переданий як параметр, вказує на іншу область пам'яті, ніж об'єкти, що використовуються в порівняннях.
583+
Порівнювані об'єкти в нашому прикладі не такі: об'єкт, переданий як параметр, вказує на іншу область пам'яті, ніж об'єкти, що використовуються в порівнянні.
584584

585585
Тому `{age: 18} === {age: 18}` і `{age: 18} == {age: 18}` повертають `false`.
586586

@@ -661,7 +661,7 @@ const sum = eval("10*10+5");
661661

662662
#### Відповідь: A
663663

664-
`eval` виконує код, переданий у вигляді рядка. Якщо цей вислів (як в даному випадку), то обчислюється вираз. Вираз `10 * 10 + 5` поверне число `105`.
664+
`eval` виконує код, переданий у вигляді рядка. Якщо це рядок (як в даному випадку), то обчислюється вираз. Вираз `10 * 10 + 5` поверне число `105`.
665665

666666
</p>
667667
</details>
@@ -712,7 +712,7 @@ console.log(num);
712712

713713
#### Відповідь: B
714714

715-
За допомогою ключового слова `var`, можна визначати скільки завгодно змінних з одним і тим же ім'ям. Змінна зберігатиме останнім присвоєне значення.
715+
За допомогою ключового слова `var`, можна визначати скільки завгодно змінних з одним і тим же ім'ям. Змінна зберігатиме останнє присвоєне значення.
716716

717717
Ви не можете зробити це з `let` або` const`, оскільки вони блочні.
718718

@@ -769,7 +769,7 @@ console.log(obj);
769769

770770
#### Відповідь: C
771771

772-
Якщо є два ключі з однаковим ім'ям, то ключ буде перезаписан. Його позиція збережеться, але значенням буде встановлено останнім.
772+
Якщо є два ключі з однаковим ім'ям, то ключ буде перезаписаний. Його позиція збережеться, але значенням буде встановлено останнім.
773773

774774
</p>
775775
</details>
@@ -905,7 +905,7 @@ baz();
905905

906906
#### Відповідь: B
907907

908-
Ми викликаємо функцію `setTimeout` першої. Тим не менш, вона виводиться в консоль останньої
908+
Ми викликаємо функцію `setTimeout` першою. Тим не менш, вона виводиться в консоль останньою.
909909

910910
Це відбувається через те, що в браузерах у нас є не тільки рантайм движок, але і `WebAPI`. `WebAPI` надає нам функцію `setTimeout` і багато інших можливостей. Наприклад, DOM.
911911

@@ -1171,7 +1171,7 @@ console.log(numbers);
11711171

11721172
Блок `catch` отримує аргумент `x`. Це не той же `x`, який визначено в якості змінної перед рядком `try`.
11731173

1174-
Потім ми присвоюємо цього аргументу значення `1` та встановлюємо значення для змінної `y`. Потім виводимо в консоль значення аргументу `x`, що дорівнює `1`.
1174+
Потім ми присвоюємо даному аргументу значення `1` та встановлюємо значення для змінної `y`. Потім виводимо в консоль значення аргументу `x`, що дорівнює `1`.
11751175

11761176
За межами блоку `catch` змінна `x` все ще `undefined`, а `y` дорівнює `2`. Коли ми викликаємо` console.log(x)` за межами блоку `catch`, цей виклик повертає `undefined`, а `y` повертає `2`.
11771177

@@ -1224,7 +1224,7 @@ console.log(numbers);
12241224

12251225
#### Відповідь: C
12261226

1227-
`[1, 2]` - початкове значення, з яким инициализируется змінна `acc`. Після першого проходу `acc` дорівнюватиме `[1,2]`, а `cur` буде `[0,1]`. Після конкатенації результат буде `[1, 2, 0, 1]`.
1227+
`[1, 2]` - початкове значення, з яким ініціалізується змінна `acc`. Після першого проходу `acc` дорівнюватиме `[1,2]`, а `cur` буде `[0,1]`. Після конкатенації результат буде `[1, 2, 0, 1]`.
12281228

12291229
Потім `acc` дорівнює `[1, 2, 0, 1]`, а cur `[2, 3]`. Після злиття отримаємо `[1, 2, 0, 1, 2, 3]`.
12301230

@@ -1278,7 +1278,7 @@ setInterval(() => console.log("Hi"), 1000);
12781278

12791279
#### Відповідь: A
12801280

1281-
Це метод повертає унікальний id. Цей id може бути використаний для очищення інтервалу за допомогою функції `clearInterval()`.
1281+
Цей метод повертає унікальний id, який може бути використаний для очищення інтервалу за допомогою функції `clearInterval()`.
12821282

12831283
</p>
12841284
</details>
@@ -1301,7 +1301,7 @@ setInterval(() => console.log("Hi"), 1000);
13011301

13021302
#### Відповідь: A
13031303

1304-
Рядок є ітеріруемой сутністю. Оператор поширення перетворює кожен символ в окремий елемент.
1304+
Рядок є ітерабельною сутністю. Оператор поширення перетворює кожен символ в окремий елемент.
13051305

13061306
</p>
13071307
</details>

0 commit comments

Comments
 (0)