Node.js - это неблокирующая асинхронная среда ввода-вывода, основанная на событиях, использующая движок Google V8 JavaScript и библиотеку libuv. Он используется для разработки приложений, которые интенсивно используют возможность запуска JavaScript как на клиенте, так и на стороне сервера, и, следовательно, выигрывают от повторного использования кода и отсутствия переключения контекста.

Node.js- это неблокирующая асинхронная среда ввода-вывода (ввода / вывода), основанная на событиях, в которой используется V8 JavaScript Engine.

node.js, обычно называемый просто Node, часто используется для разработки приложений, которые полагаются на возможность запуска javascriptкак на стороне клиента, так и на стороне сервера. Использование одного и того же языка на клиенте и сервере выгодно от улучшенного повторного использования кода и меньшего переключения контекста.

Примечательная особенность node.jsзаключается в том, что он не блокируется - если одна задача останавливается или приостанавливается для операции ввода-вывода, другая может вступить во владение, пока это без дела Это обеспечивает высокую эффективность, так как программе в целом никогда не приходится бездействовать и ждать завершения одной задачи. Такие библиотеки, как async, используют эту возможность. Дополнительную информацию можно найти здесь.

Также можно использовать зрелые JavaScript-фреймворки, такие как YUIи jQueryдля управления DOM на стороне сервера в node.js.

Чтобы еще больше упростить разработку сложного JavaScript, Node.jsподдерживает Стандарт CommonJS, обеспечивающий модульную разработку и распространение программного обеспечения в пакетах с помощью менеджера пакетов узлов (NPM).

Загрузите последнюю основную версию Node.js

Последний основной выпуск: Node.js v14.14.0

Загрузите последнюю версию LTS Node.js

Последняя версия LTS: Node.js v15.4.0выпущена 9 декабря 2020 г.

Приложения, которые могут быть написаны с использованием Node.js, включают, но не ограничиваются:

  • Статические файловые серверы
  • Фреймворки веб-приложений
  • Программное обеспечение для обмена сообщениями
  • Серверы для многопользовательских игр HTML5 или потокового аудио / видео
  • Приложения в реальном времени
  • Кроссплатформенные программы

Задавая вопросы о Node.js, вы должны:

  1. Обязательно ознакомьтесь с официальной документацией по API, прежде чем задавать вопрос, ваш вопрос может быть тривиальным.
  2. Выделите проблему и воспроизведите ее, используя как можно меньше кода.
  3. Если вопрос не имеет ничего общего с node.js, рассмотрите вопрос как javascriptвопрос вместо.
  4. Укажите, какую версию Node.js вы используете. В случае сомнений используйте node -v или node --version.
  5. Обязательно используйте только тег node.js, поскольку nodeявляется неоднозначным.

Интересные вопросы и ответы

Полезные ссылки

Учебники, руководства и книги

Беседы, презентации и подкасты на Node.js

Бесплатные Node.js Книги и Ресурсы

Комната чата и список рассылки

Логирование

  • pino- чрезвычайно быстрый регистратор, вдохновленный Bunyan.
  • winston- библиотека асинхронного журналирования с несколькими транспортными системами.
  • console-log-level- самый простой регистратор, который можно себе представить, с поддержкой уровней журнала и пользовательских префиксов.
  • раскадровка- сквозные, иерархические, красочные записи и истории в реальном времени.
  • signale- взломанный консольный регистратор с прекрасным выводом.

Официальный логотип