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
Copy file name to clipboardExpand all lines: 1-js/01-getting-started/1-intro/article.md
+16-16Lines changed: 16 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# Вступ до JavaScript
2
2
3
-
Давайте розглянемо, що такого особливого в JavaScript, що ми можемо досягти з його допомогою і які ще технології пов’язані з ним.
3
+
Давайте розглянемо, що такого особливого в JavaScript, чого ми можемо досягти з її допомогою і які ще технології пов’язані з нею.
4
4
5
5
## Що таке JavaScript?
6
6
@@ -13,9 +13,9 @@
13
13
У цьому плані JavaScript дуже відрізняється від іншої мови програмування — [Java](https://uk.wikipedia.org/wiki/Java).
14
14
15
15
```smart header="Чому цю мову називають <u>Java</u>Script?"
16
-
Коли мову JavaScript було створено, спочатку вона мала іншу назву: "LiveScript". Але тоді була дуже популярна мова програмування Java, тому було вирішено, що позиціонування нової мови як "молодшого брата" Java допоможе у її популяризації.
16
+
Коли мову JavaScript було створено, спочатку вона мала іншу назву: "LiveScript". Але тоді була дуже популярна мова програмування Java, тому було вирішено, що позиціонування нової мови як "молодшої сестри" Java допоможе у її популяризації.
17
17
18
-
Але з часом JavaScript значно виріс і став повністю незалежною мовою програмування зі своєю специфікацією [ECMAScript](https://uk.wikipedia.org/wiki/ECMAScript), і зараз немає нічого спільного з Java.
18
+
Але з часом JavaScript значно вирісла і стала повністю незалежною мовою програмування зі своєю специфікацією [ECMAScript](https://uk.wikipedia.org/wiki/ECMAScript), і зараз немає нічого спільного з Java.
19
19
```
20
20
21
21
Сьогодні JavaScript може виконуватися не тільки у браузері, але й на сервері, або на будь-якому пристрої, який має спеціальну програму — [рушій JavaScript](https://uk.wikipedia.org/wiki/Рушій_JavaScript).
@@ -43,54 +43,54 @@
43
43
44
44
## Що може вбудований у браузер JavaScript?
45
45
46
-
Сучасний JavaScript — це "безпечна" мова програмування. Вона не надає низькорівневого доступу до пам’яті чи процесора, оскільки початково була створена для браузерів, які цього не потребують.
46
+
Сучасний JavaScript -- це "безпечна" мова програмування. Вона не надає низькорівневого доступу до пам’яті чи процесора, оскільки початково була створена для браузерів, які цього не потребують.
47
47
48
-
Можливості JavaScript значно залежать від оточення, в якому він виконується. Наприклад, [Node.js](https://uk.wikipedia.org/wiki/Node.js) підтримує функції, які дозволяють JavaScript читати/записувати довільні файли, здійснювати мережеві запити, та інше.
48
+
Можливості JavaScript значно залежать від оточення, в якому вона виконується. Наприклад, [Node.js](https://uk.wikipedia.org/wiki/Node.js) підтримує функції, які дозволяють JavaScript читати/записувати довільні файли, здійснювати мережеві запити, та інше.
49
49
50
-
Вбудований у браузер JavaScript може робити все, що зв’язано з маніпуляцією веб-сторінками, взаємодією з користувачем та веб-сервером.
50
+
Вбудована у браузер JavaScript може робити все, що пов’язано з маніпуляцією веб-сторінками, взаємодією з користувачем та веб-сервером.
51
51
52
-
Наприклад, вбудований у браузер JavaScript може:
52
+
Наприклад, JavaScript може:
53
53
54
54
- Додавати новий HTML-код на сторінку, змінювати існуючий вміст, змінювати стилі.
55
55
- Реагувати на дії користувача, опрацьовувати натискання миші, переміщення вказівника, натискання на клавіші клавіатури.
56
56
- Відправляти запити через мережу до віддалених серверів, завантажувати і відвантажувати файли (так звані технології [AJAX](https://uk.wikipedia.org/wiki/AJAX) і [COMET](https://uk.wikipedia.org/wiki/Comet_(програмування))).
57
57
- Отримувати і надсилати [куки](https://uk.wikipedia.org/wiki/Куки), ставити запитання відвідувачам, показувати повідомлення.
58
58
- Запам’ятовувати дані на стороні клієнта ("[local storage](https://developer.mozilla.org/uk/docs/Web/API/Window/localStorage)").
59
59
60
-
## Що НЕ може вбудований в браузер JavaScript?
60
+
## Що НЕ може JavaScript?
61
61
62
62
Можливості JavaScript у браузері обмежені з метою безпеки користувача. Мета полягає в тому, щоб заборонити небезпечним веб-сторінкам доступ до приватної інформації чи не дати пошкодити дані, що знаходяться на комп’ютері користувача.
63
63
64
64
Приклади таких обмежень:
65
65
66
-
- JavaScript на веб-сторінці не може читати/записувати довільні файли на жорсткому диску, копіювати їх чи виконувати програми. Він не має прямого доступу до функцій ОС.
66
+
- JavaScript на веб-сторінці не може читати/записувати довільні файли на жорсткому диску, копіювати їх чи виконувати програми. Вона не має прямого доступу до функцій ОС.
67
67
68
68
Сучасні браузери дозволяють працювати з файлами, але доступ до них обмежений і надається тільки тоді, коли користувач виконав відповідні дії, наприклад, перетягнув файл у вікно браузера чи вибрав його через теґ `<input>`.
69
69
70
-
Є можливість взаємодії з камерою/мікрофоном або іншими пристроями, але для цього потрібен явний дозвіл користувача. Тому сторінка, на якій увімкнений JavaScript, не може нишком увімкнути веб-камеру, спостерігати за оточенням і відсилати інформацію до [СБУ](https://uk.wikipedia.org/wiki/Служба_безпеки_України).
70
+
Є можливість взаємодії з камерою/мікрофоном або іншими пристроями, але для цього потрібен явний дозвіл користувача. Тому сторінка, на якій увімкнена JavaScript, не може нишком увімкнути веб-камеру, спостерігати за оточенням і відсилати інформацію до [СБУ](https://uk.wikipedia.org/wiki/Служба_безпеки_України).
71
71
- Різні вкладки/вікна зазвичай не знають один про одного. Іноді це можливо, наприклад, коли одне вікно використовує JavaScript, щоб відкрити інше. Але навіть у цьому разі JavaScript з однієї сторінки не має доступу до іншої, якщо вони з різних сайтів (мають різні домени, протоколи чи порти).
72
72
73
73
Це називається "[Політикою того ж походження (Same Origin Policy)](https://uk.wikipedia.org/wiki/Політика_того_ж_походження)". Щоб обійти це обмеження, *обидві сторінки* повинні погодитися на обмін даними і містити JavaScript код, який спеціальним чином буде обмінюватися даними. Ми розглянемо це в посібнику.
74
74
75
75
Знову-таки, це обмеження для безпеки користувача. Сторінка за адресою `http://anysite.com`, яку відкрив користувач, не повинна мати доступ до іншої вкладки браузера з URL-адресою `http://gmail.com` і звідти викрадати інформацію.
76
-
- JavaScript може легко спілкуватися через мережу з сервером, від якого отримана поточна сторінка. Але його здатність отримувати дані з інших сайтів/доменів обмежена. Запит на інший домен також можливий, проте це потребує спеціального заголовку в HTTP від віддаленого сервера. Це зроблено з метою безпеки.
76
+
- JavaScript може легко спілкуватися через мережу з сервером, від якого отримана поточна сторінка. Але її здатність отримувати дані з інших сайтів/доменів обмежена. Запит на інший домен також можливий, проте це потребує спеціального заголовку в HTTP від віддаленого сервера. Це зроблено з метою безпеки.
77
77
78
78

79
79
80
80
Таких обмежень немає, якщо JavaScript використовується за межами браузера, наприклад, на сервері. Сучасні браузери дозволяють встановлювати плаґіни/розширення, які мають розширені можливості, проте потребують розширених прав.
81
81
82
-
## Що робить JavaScript унікальним?
82
+
## Що робить JavaScript унікальною?
83
83
84
84
Є як мінімум *три* чудові особливості в JavaScript:
85
85
86
86
```compare
87
87
+ Цілковита інтеграція з HTML/CSS.
88
88
+ Прості речі робляться просто.
89
-
+ Підтримується всіма сучасними браузерами і увімкнений усталено.
89
+
+ Підтримується всіма сучасними браузерами і увімкнена усталено.
90
90
```
91
91
JavaScript – це єдина браузерна технологія, яка суміщає ці три речі.
92
92
93
-
Це і робить його унікальним. Ось чому JavaScript найбільш поширений засіб створення браузерних інтерфейсів.
93
+
Це і робить її унікальною. Ось чому JavaScript найбільш поширений засіб створення браузерних інтерфейсів.
94
94
95
95
До слова, JavaScript також дозволяє створювати сервери, мобільні застосунки, тощо.
96
96
@@ -106,8 +106,8 @@ JavaScript – це єдина браузерна технологія, яка
106
106
107
107
Приклади таких мов:
108
108
109
-
-[CoffeeScript](http://coffeescript.org/) — це "синтаксичний цукор" поверх JavaScript. Він вводить більш короткий синтаксис, що дозволяє нам писати більш чіткий і точний код. Зазвичай, це до вподоби програмістам на Ruby.
110
-
-[TypeScript](http://www.typescriptlang.org/)зосереджений на додаванні "строгої типізації даних", щоб спростити розробку і підтримку складних систем. Розробляється у Microsoft.
109
+
-[CoffeeScript](http://coffeescript.org/) — це "синтаксичний цукор" поверх JavaScript. Вона вводить більш короткий синтаксис, що дозволяє нам писати більш чіткий і точний код. Зазвичай, це до вподоби програмістам на Ruby.
110
+
-[TypeScript](http://www.typescriptlang.org/)зосереджена на додаванні "строгої типізації даних", щоб спростити розробку і підтримку складних систем. Розробляється у Microsoft.
111
111
-[Flow](http://flow.org/) також додає типізацію даних, але іншим способом. Розробляється компанією Facebook.
112
112
-[Dart](https://www.dartlang.org/) — це автономна мова, яка має власний рушій, що працює в не-браузерних середовищах (як-от мобільні застосунки), але також може транспілюватися в JavaScript. Розробляється компанією Google.
113
113
-[Brython](https://brython.info/) це транспілятор коду з мови Python в JavaScript, що дозволяє писати застосунки на чистому Python без використання JavaScript.
0 commit comments