Зміст та використання JavaScript void

Відсутність значення і значення undefined - раритет найдавніших часів інформаційних технологій, але навіть у сучасному світі у них є місце і значення. Далеко не завжди має сенс приймати рішення. Іноді має об 'єктивний сенс відкласти прийняття рішення на потім.

Історичний семантичний момент

Саме по собі void означає "" нікуди "", "" нічого не робити "" або, за змістом JavaScript void, - undefined.


Застосуванням ключового слова void прославилася мова програмування С/С + + більшою мірою, ніж інші мови (тоді ще локального) програмування. Але не тільки С/С + + декларував відсутність результату дії (функції) як дане особливого роду.

Теорія і практика програмування завжди мали варіант значення "" відсутність значення "", але мало яка мова донині має значення "" відкат "" значення і "" скасування "" дії.

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

Сучасні реалії інтернет-програмування

У сучасній інтернет-практиці HTML/CSS:

  • код розмітки;
  • форма подання інформації в конкретному застосуванні;
  • предмет аналізу в тому ж конкретному застосуванні.

Переглядач JavaScript:


  • логіка та події;
  • алгоритм і функціональність;
  • відсутність історії змін (дані) і відкату дій (алгоритм).

Термін void зберіг своє невизначене значення досі. У контексті JavaScript void призводить до значення undefined.

Сам по собі виклик функціоналу відбувається, дія виконується, функція відпрацьовує певний результат, але в кінцевому підсумку "" офіційним "" результатом стає декларація відсутності результату, тобто значення undefined.

Область компетенції void і undefined

Зазвичай JavaScript void і undefined застосовуються в посиланнях < a href..., це приватний варіант використання, при якому може бути виконано дію, але браузеру буде відомо зворотне:

  • Дію не виконано.
  • Продовження за ним не повинно слідувати.

Насправді складність мови розмітки HTML, її взаємозв 'язку з таблицями CSS і потужний розвиток браузерної мови призвели до зворотного: JavaScript void 0, що означає або що не означає - браузера не стосується.

Розробник може вкладати власний сенс, інше розуміння ситуації. Він може орієнтувати алгоритм, що призводить до виклику JavaScript void на що завгодно. У розробника є синтаксис і базовий сенс від браузерної мови, інше залежить від вирішуваної задачі, області її компетенції та логіки діалогу з відвідувачем веб-ресурсу.


Блокування дій браузера в тому чи іншому елементі сторінки веб-ресурсу часто необхідне без будь-якої видимої причини на тій простій підставі, що алгоритми бувають досить складні, а шляхи виходу на елемент і дії відвідувача дуже важко заздалегідь передбачити.

Простіше передбачити набір дій для орієнтації в ситуації, але до того, як можна буде пустити алгоритм далі - заблокувати роботу браузера в тому чи іншому напрямку.