Зародившись как скриптовый язык в помощь веб-разработчикам, с дальнейшим развитием JavaScript стал мощным инструментом разработки клиентской части, обеспечивающий удобство и интерактивность страницы прямо в браузере у пользователя.
Из-за специфичности среды и целей, JavaScript отличается от обычных языков программирования, и имеет множество особенностей, не понимая которые, довольно сложно написать хороший кроссбраузерный код.
Думаю, что большинство программистов, писавших код на JavaScript больше пары дней, сталкивались с этими особенностями. Цель данного топика не открыть что-то новое, а попытаться описать эти особенности «на пальцах» и «недостатки» сделать «преимуществами».
В данном топике будут рассматриваться:
- Замыкания
- Прототипирование
- Контекст выполнения

![Системное программирование / [Из песочницы] Учимся писать модуль ядра (Netfilter) или Прозрачный прокси для HTTPS Системное программирование / [Из песочницы] Учимся писать модуль ядра (Netfilter) или Прозрачный прокси для HTTPS](https://www.pvsm.ru/images/1b60d2531d76c0b24c7f0743b8d851b2.png)