Оператор void вычисляет выражение и возвращает undefined.
Этот оператор используется для запуска кода, который влечет за собой эффекты, не связанные с возвращаемым значением.
Иногда вызов void(0) используют для получения undefined. В этом случае можно вместо void(0) использовать просто undefined.
При использовании протокола "javascript:(URI)", браузер выполняет код URI и заменяет содержимое документ на возвращенное значение, если оно не undefined.
Поэтому javascript-вызовы заворачивают в void. Особенно часто это делают в букмарклетах.
Пример:
<a href="javascript:void(document.body.style.backgroundColor='green');">
Нажмите и фон станет зеленым
</a>
Кстати, использование протокола javascript: не рекомендуется, так как в современном javascript обычно есть лучшие альтернативы, например события.
Дежурная шутка
- Здравствуйте! Это Мария Павловна?
- Да. А вы кто?
- Я мануальный терапевт Михайлов Семён Семёнович. Могу помочь вам вылечить остеохондроз.
- А откуда вы знаете, чем я болею?
- Так вы уже неделю об этом на своей страничке в социальной сети пишите…