Вступ у те, як працює JavaScript?

JavaScript - це сценарій мови, який використовується в браузері для взаємодії з інтерфейсом. Брендан Ейх був першою людиною, яка створила двигун JavaScript, для веб-браузера Netspace Navigator в Netspace. Він реалізований на C, а його кодова назва - SpiderMonkey. Mocha - це ім'я, яке було надано проекту спочатку, потім перейменовано на LiveScript і, нарешті, коли Netspace та Sun зробили ліцензійну угоду, його знову перейменовано на JavaScript. У цій темі ми дізнаємось про те, як працює JavaScript. Ми, мабуть, чули про такі популярні двигуни, як V8, Spider Monkey і багато інших. У різних двигунах є різні "кодові назви", наприклад:

  • V8 - двигун, який використовується в Opera & Chrome.
  • SpiderMonkey - двигун, що використовується у Firefox.
  • Тризуб, чакра - двигун, що використовується в IE & Nitro.
  • ChakraCore - двигун, що використовується в Microsoft Edge.
  • SquirrelFish - двигун, що використовується в Safari.

Двигун, що використовується для JavaScript, складається з двох основних компонентів:

  • Heap Memory - саме тут відбувається розподіл пам'яті.
  • Стек викликів - це місце, куди дзвонять стеки та виконується код.

ПРИМІТКА:

JavaScript, однопотокова мова програмування, що означає, що він має єдиний стек викликів, і, таким чином, він має можливість робити одну справу за один раз. Стек викликів - це в основному структура даних, яка записує точку в програмі, яка фактично виконується. Цей стек викликів схожий на інший стек, що має основний функціонал, як, наприклад, якщо ми вступимо у функцію, ми поставимо її у верхній частині стека. Ми маємо вискочити у верхній частині стека, якщо ми хочемо повернутися з функції. Це основна функціональність кожного стека. Оскільки ми обговорюємо двигуни, що працюють на функціях JavaScript, дуже складні, але основні речі, які виконує кожен двигун у більш широкому сенсі, полягають у наступному:

  • Якщо браузер читає сценарій, то двигун вбудовується в сам браузер.
  • Після прочитання сценарію він перетворює ("компілює") сценарій на машинну мову.
  • І тоді машинний код працює досить швидко.

Що можуть робити роботи JavaScript у браузері?

  • Він змінює існуючий вміст, змінює стилі, додаючи новий HTML на сторінки.
  • Надає такі функції, як натискання миші, наведення миші тощо, що реагує на дії використання.
  • Надсилання та отримання запитів по мережі на віддалені сервери, не завантажуючи повну сторінку як введення користувача. Одна з таких технологій, яка дуже відома - AJAX.
  • За допомогою JavaScript можна встановлювати та отримувати значення файлів cookie, надає повідомлення користувачам для інформації, попередження та інших цілей.
  • Також можна зберігати тимчасові дані на стороні клієнта.

Що НЕ МОГУТЬ працювати у браузері JavaScript?

Можливості JavaScript дещо обмежені в браузері, обмежені заради безпеки користувача. Метою є не допустити доступу до приватної інформації деякими сторонніми веб-сторінками або завдати шкоди користувачам. Деякі сценарії такого обмеженого доступу:

  • За замовчуванням JavaScript на веб-сторінці обмежений для читання / запису довільних файлів на жорсткому диску, копіювання їх або виконання програм. Він навіть не має прямого доступу до системних функцій ОС. Небагато сучасних браузерів також дозволяють йому працювати з файлами, але для того ж, доступ обмежений і надається лише в тому випадку, якщо користувач виконує певні дії, такі як "перекидання" файлу у вікно браузера. Також доступні деякі способи взаємодії з камерою / мікрофоном та іншими пристроями, але для цього також потрібен чіткий дозвіл користувача. Отже, сторінка з підтримкою JavaScript може не вмикати таємно веб-камеру або може надсилати інформацію на віддалений сервер або будь-яку третю сторону.
  • Різні вкладки чи вікна взагалі не знають про випадки один одного. Але технічно це дуже можливо. Це ж називається "однакова політика щодо походження". Для того, щоб це працювало, обидва екземпляри повинні містити якийсь спеціальний код JavaScript, який може обробляти обмін даними між собою. Але обмеження знову є для безпеки користувача. Наприклад, веб-сторінка з URL abc.com, яку відкрив користувач, не повинна мати доступ до іншої вкладки браузера з URL-адресою xyz.com та красти інформацію в таємниці.
  • За допомогою JavaScript можна легко спілкуватися по мережі з будь-яким віддаленим сервером або третьою стороною, звідки прийшла поточна сторінка. Але з міркувань безпеки її можливість приймати або надсилати дані з інших сайтів або доменів відключена. Але те саме можливо, для якого деякі роботи JavaScript вимагають явної згоди з віддаленого боку. Таке обмеження неможливо передбачити, якщо JavaScript буде використовуватися за межами браузера, а не всередині, тобто з сервера. Ви також можете помітити, що деякі сучасні браузери дозволяють встановлювати плагін або розширення, завдяки яким роботи JavaScript, використовувані всередині браузера, отримують розширені дозволи.

Що робить роботу JavaScript унікальною?

  • Як ми всі знаємо, це об'єктна мова сценаріїв.
  • Він написаний на C. Це інтерпретована мова.
  • Чистий JavaScript швидше отримує доступ до DOM.
  • З використанням роботи JavaScript користувач отримує більше контролю над браузером.
  • Він також може обробляти дату і позначку часу.
  • Він також може виявити браузер користувача і навіть ОС.
  • Він легкий.
  • Це сценарій мови, як уже було сказано.
  • Це сценарна мова на основі перекладача.
  • Це чутливий до регістру, тобто синтаксис чутливий до регістру.
  • Це об'єктна мова, оскільки вона забезпечує попередньо визначені об'єкти, такі як Java, але це не Java.
  • Кожен оператор у JavaScript повинен закінчуватися крапкою з комою (;).
  • Найголовніше, що надає JavaScript, - це можливість створювати нові функції в скриптах. За допомогою функції можна оголосити функцію в JavaScript
  • Повна підтримка HTML та CSS.
  • Він дуже простий у використанні.
  • Підтримка для всіх браузерів.

Обмеження роботи JavaScript

Серед багатьох переваг JavaScript має і деякі обмеження, які наведені нижче:

  • JavaScript знаходиться на стороні клієнта, і він не забезпечує можливість читання або запису файлів на диску.
  • JavaScript не можна використовувати для мережевих додатків, оскільки він не забезпечує такої підтримки.
  • Він не забезпечує жодної функціональності, як багатопотокове чи багатопроцесорне.

Висновок

Тож з цим всім нам стало відомо, що про деяку основну інформацію про еволюцію роботи JavaScript, деякі відомі двигуни, які запускають JavaScript у веб-браузерах, які переваги зберігання JavaScript у веб-переглядачах та що може статися, якщо JavaScript може розміщувати та працювати поза веб-переглядачами. Ми також натрапили на деякі особливості роботи JavaScript, які зробили її зручною та унікальною, а також деякі обмеження / недоліки JavaScript. Отож, я закінчую тему про те, як працює JavaScript, є ще багато речей, які можна вивчити з Інтернету.

Рекомендовані статті

Це було керівництвом роботи з JavaScript. Тут ми обговорили основні поняття, обмеження та те, що робить JavaScript унікальним для інших. Ви також можете переглянути наступні статті, щоб дізнатися більше:

  1. Чит-лист JavaScript
  2. Використання JavaScript
  3. JavaScript проти JScript
  4. C # vs JavaScript
  5. Математичні функції в JavaScript
  6. Навігатор в JavaScript | Властивості, методи (приклади)