You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Як ми бачимо, "унарний плюс" має пріоритет `17`, що вище за `13` — пріоритет "додавання" (бінарний плюс). Саме тому, у виразі `"+apples + +oranges"`, унарні плюси виконуються перед додаванням (бінарним плюсом).
208
+
Як ми бачимо, "унарний плюс" має пріоритет `15`, що вище за `12`-- пріоритет "додавання" (бінарний плюс). Саме тому, у виразі `"+apples + +oranges"`, унарні плюси виконуються перед додаванням (бінарним плюсом).
209
209
210
210
## Присвоєння
211
211
212
-
Зазначимо, що присвоєння `=` також є оператором. Воно є в таблиці з пріоритетами й має дуже низький пріоритет `3`.
212
+
Зазначимо, що присвоєння `=` також є оператором. Воно є у таблиці з пріоритетами й має дуже низький пріоритет `2`.
213
213
214
214
Тому, коли ми присвоюємо значення змінній, наприклад, `x = 2 * 2 + 1`, спочатку виконуються обчислення, а потім виконується присвоєння `=` зі збереженням результату в `x`.
215
215
@@ -437,7 +437,7 @@ counter++;
437
437
-RIGHTSHIFT(зсув праворуч) ( `>>` )
438
438
-ZERO-FILLRIGHTSHIFT(зсув праворуч із заповненням нулями) ( `>>>` )
439
439
440
-
Ці оператори використовуються тоді, коли нам потрібно "возитися" з числами на дуже низькому (побітовому) рівні (тобто — вкрай рідко). Найближчим часом такі оператори нам не знадобляться, оскільки у веброзробці вони майже не використовуються. Проте в таких галузях, як криптографія, вони корисні. Ви можете прочитати [розділ про них](https://developer.mozilla.org/uk/docs/Web/JavaScript/Guide/Вирази_та_оператори#Бітові_оператори) на MDN, якщо виникне потреба.
440
+
Ці оператори використовуються тоді, коли нам потрібно "возитися" з числами на дуже низькому (побітовому) рівні (тобто -- вкрай рідко). Найближчим часом такі оператори нам не знадобляться, оскільки у веброзробці вони майже не використовуються. Проте в таких галузях, як криптографія, вони можуть бути дуже корисними. Ви можете прочитати розділ [Bitwise Operators](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Expressions_and_Operators#bitwise_operators) на MDN, якщо виникне потреба.
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/12-nullish-coalescing-operator/article.md
+4-15
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@
4
4
5
5
Оператор об’єднання з null записується як два знаки питання `??`.
6
6
7
-
В цій статті ми будемо писати, що значення виразу "визначене", якщо воно відрізняється від `null`чи`undefined`.
7
+
Оскільки `null` і `undefined` сприймаються однаково, ми введемо спеціальну домовленність. В цій статті ми будемо вважати, що значення виразу "визначене", якщо воно відрізняється від `null`та`undefined`.
8
8
9
9
Результатом `a ?? b` буде:
10
10
-`a`, якщо `a` визначене,
@@ -22,15 +22,9 @@ result = (a !== null && a !== undefined) ? a : b;
22
22
23
23
Тепер повинно бути абсолютно зрозуміло, що робить `??`. Подивімось, де це допомагає.
24
24
25
-
В загальному, оператор `??` використовують, щоб забезпечити типове значення для потенційно невизначеної змінної.
26
25
27
-
Наприклад, тут ми показуємо `user`, якщо він визначений, інакше `Анонімний`:
26
+
Наприклад, тут ми показуємо значення у змінній `user`, якщо її значення не `null/undefined`, інакше -- показуємо`Анонімний`:
28
27
29
-
```js run
30
-
let user;
31
-
32
-
alert(user ??"Анонімний"); // Анонімний (user не визначений)
Скажімо, у нас є дані користувача в змінних `firstName`, `lastName` або `nickName`. Всі вони можуть бути не визначені, якщо користувач вирішив не вводити значення.
46
40
47
-
Ми хотіли б показати ім’я користувача, використовуючи одну з цих змінних, або показати "Анонімний", якщо всі вони не визначені.
41
+
Ми хотіли б показати ім’я користувача, використовуючи одну з цих змінних, або показати "Анонімний", якщо всі вони `null/undefined`.
48
42
49
43
Використаймо оператор `??` для цього:
50
44
@@ -106,15 +100,10 @@ alert(height ?? 100); // 0
106
100
107
101
## Пріоритет
108
102
109
-
Пріоритет оператора `??`приблизно такий самий, як `||`, тільки трохи нижчий. Він дорівнює `5` у [таблиці MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence#Table), а пріоритет `||` -- `6`.
103
+
Пріоритет оператора `??` такий самий, як у `||`. Він дорівнює `4` у [таблиці MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence#Table).
110
104
111
105
Це означає, що, як і `||`, оператор об’єднання з null `??` оцінюється до `=` та `?`, але після більшості інших операцій, таких як `+`, `*`.
112
106
113
-
Отже, якщо ми хотіли б вибрати значення за допомогою `??` у виразі з іншими операторами, розгляньте додавання дужок:
Copy file name to clipboardExpand all lines: 1-js/02-first-steps/17-arrow-functions-basics/article.md
+6-6
Original file line number
Diff line number
Diff line change
@@ -48,7 +48,7 @@ alert( sum(1, 2) ); // 3
48
48
alert( double(3) ); // 6
49
49
```
50
50
51
-
- Якщо аргументів немає, то дужки повинні бути порожніми (але вони повинні бути):
51
+
- Якщо аргументів немає, то дужки порожні, але вони повинні бути:
52
52
53
53
```js run
54
54
let sayHi = () => alert("Привіт!");
@@ -76,7 +76,7 @@ welcome();
76
76
77
77
## Багаторядкові стрілкові функції
78
78
79
-
У попередніх прикладах зліва від `=>` були аргументи, а справа — окремий вираз, що певним чином їх використовував.
79
+
У попередніх прикладах ліворуч від `=>` були аргументи, а справа — окремий вираз, що певним чином їх використовував.
80
80
81
81
Проте іноді, нам потрібно дещо складніше, наприклад, декілька виразів чи інструкцій. Це також можливо, але ми повинні записати їх в фігурних дужках і використати `return`, як у звичайних функціях.
82
82
@@ -86,7 +86,7 @@ welcome();
86
86
let sum = (a, b) => { // фігурна дужка починає блок багаторядкової функції
87
87
let result = a + b;
88
88
*!*
89
-
return result; // якщо ми використовуємо фігурні дужки, то "return" дозволить повернути результат
89
+
return result; // якщо ми використовуємо фігурні дужки, то щоб повернути результат, потрібно додати "return"
90
90
*/!*
91
91
};
92
92
@@ -101,7 +101,7 @@ alert( sum(1, 2) ); // 3
101
101
102
102
## Підсумки
103
103
104
-
Стрілкові функції зручні для однорядкових дій. Вони бувають двох видів:
104
+
Стрілкові функції зручні для простих операцій, особливо для тих, що можна записати в один рядок. Вони бувають двох видів:
105
105
106
-
1. Без фігурних дужок:`(...args) => expression`— права частина є виразом: функція виконує його і повертає результат.
107
-
2. З фігурними дужками:`(...args) => { body }`— дужки дозволяють включити в функцію більше однієї інструкції, але при цьому потрібно явно вказати `return`, щоб що-небудь повернути.
106
+
1. Без фігурних дужок:`(...args) => expression`-- права частина є виразом: функція виконує його і повертає результат. Дужки можна опускати, якщо є лише один аргумент, напр. `n => n*2`.
107
+
2. З фігурними дужками:`(...args) => { body }`-- дужки дозволяють включити в функцію більше однієї інструкції, але при цьому потрібно явно вказати `return`, щоб щось повернути.
0 commit comments