Ошибки, сложный материал, вопросы >
Нашли опечатку или неточность?

Выделите текст, нажмите ctrl + enter и отправьте его нам. В течение нескольких дней мы исправим ошибку или улучшим формулировку.

Что-то не получается или материал кажется сложным?

Загляните в раздел «Обсуждение»:

  • задайте вопрос нашим менторам. Вы быстрее справитесь с трудностями и прокачаете навык постановки правильных вопросов, что пригодится и в учёбе, и в работе программистом;
  • расскажите о своих впечатлениях. Если курс слишком сложный, подробный отзыв поможет нам сделать его лучше;
  • изучите вопросы других учеников и ответы на них. Это база знаний, которой можно и нужно пользоваться.
Об обучении на Хекслете
JS: Настройка окружения

NPM

Установка Node.js добавляет в систему не только интерпретатор, но и несколько важных утилит для работы с JavaScript-проектами. Среди них утилита npm.

# Так можно проверить ее наличие
$ npm --version
6.14.5

npm выполняет множество важных задач, с которыми мы будем знакомиться в течении курса. Сейчас нас интересует ее базовое использование – создание (инициализация) нового проекта. Под проектом понимается код какого-то приложения, например, конкретного сайта.

Для создания нового проекта нужно выполнить две вещи:

  1. Создать директорию проекта, место внутри которого будут располагаться все файлы с кодом. Эта директория называется корнем проекта.
  2. Запустить команду инициализации npm init в корне проекта.
# Создание директории
$ mkdir hexlet-hello-world
# Переход внутрь директории
$ cd hexlet-hello-world

# Инициализация проекта
# init – означает initialization
$ npm init

This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.

Press ^C at any time to quit.
package name: (hexlet-hello-world)

В процессе инициализации, npm задаст несколько вопросов на тему того как должен называться проект, какая у него должна быть версия, описание и тому подобное. Все эти вопросы можно смело пропускать, у вас всегда будет возможность поменять ответы.

В конце npm спросит все ли правильно и покажет содержимое файла package.json, который и станет основой нового проекта. После ответа yes этот файл запишется на диск и проект будет считаться готовым к работе.

{
  "name": "tmp",
  "version": "1.0.0",
  "type": "module",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC"
}

package.json — это текстовый файл, внутри которого данные хранятся в JSON формате. Этот формат позволяет описывать данные как пары "ключ-значение", где значением может быть сам JSON. В примере выше — это значение ключа scripts.

Обратите внимание на ключ "type" в JSON выше. Эту часть нужно добавить самостоятельно, исправив файл. Она нужна для работы системы импортов.

После завершения процесса инициализации, можно приступать к самому главному — написанию кода. По умолчанию код создается внутри файла index.js, лежащего в корне проекта (там, где создан файл package.json). Это не значит, что весь пакет состоит из одного файла. Файлов с кодом можно создавать сколько угодно, главное, при этом, что основная работа происходит внутри index.js, куда импортируется код из остальных файлов.

Самостоятельная работа

  1. В проекте hexlet-js инициализируйте JavaScript-проект. Не забудьте про ключ type описанный выше
  2. Заполните пустые поля файла package.json, подробное описание каждого поля можно посмотреть в документации npm
  3. Запустите код из index.js, убедитесь что всё работает
  4. Добавьте все изменения на гитхаб

Дополнительные материалы

  1. NPM
  2. Эталонный репозиторий Node.js

<span class="translation_missing" title="translation missing: ru.web.courses.lessons.mentors.mentor_avatars">Mentor Avatars</span>

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят менторы из команды Хекслета или другие студенты.

Зарегистрироваться

или войти в аккаунт

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно.

  • 115 курсов, 2000+ часов теории
  • 800 практических заданий в браузере
  • 250 000 студентов

Отправляя форму, вы соглашаетесь c «Политикой конфиденциальности» и «Условиями оказания услуг».

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Rambler
Логотип компании Bookmate
Логотип компании Botmother

Есть вопрос или хотите участвовать в обсуждении?

Зарегистрируйтесь или войдите в свой аккаунт

Отправляя форму, вы соглашаетесь c «Политикой конфиденциальности» и «Условиями оказания услуг».