Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Специализация

Python Backend Developer

Java Backend Developer

Node.js Backend Developer

Golang Backend Developer

React Frontend Developer

Посмотреть все

Выберите навыки

React

React

JavaScript

JavaScript

Git

Git

Redux

Redux

Webpack

Webpack

Посмотреть все

Сложность

1-3

4-6

7-8

9-10

Рейтинг вопросов

1

2

3

4

5

Подпишись на React Developer в телеграм

Вопросы React Frontend Developer


Для чего нужен package.json в JavaScript-проекте?

package.json описывает проект и его зависимости. В нём хранятся имена библиотек, версии, скрипты и метаданные проекта. Этот файл используется менеджерами пакетов для установки зависимостей. Он определяет, как проект собирается и запускается. Без него невозможна стандартная работа с npm или yarn.

Подробнее

Чем отличается package.json от package-lock.json?

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

Подробнее

Что произойдёт, если один разработчик имеет package-lock.json, а другой — нет?

Если один разработчик имеет package-lock.json, а другой нет, то версии зависимостей могут различаться. Файл package-lock.json фиксирует точные версии всех пакетов и их подзависимостей. Без него npm устанавливает версии, соответствующие диапазонам из package.json, что может привести к несовместимости и ошибкам. Это нарушает принцип воспроизводимости сборки.
Подробнее

Почему в package.json версии зависимостей указываются диапазоном, а не точным значением?

Версии зависимостей указываются диапазоном, чтобы автоматически получать исправления ошибок и обновления безопасности без ручного вмешательства. Это позволяет проекту оставаться совместимым с новыми версиями библиотек, не требуя постоянного обновления package.json. Диапазоны задаются с помощью символов ^ (совместимые обновления) и ~ (только патчи).
Подробнее

Что такое зависимости в контексте package.json?

Зависимости в package.json — это пакеты, необходимые для работы проекта. Они делятся на два типа: dependencies (для продакшена) и devDependencies (только для разработки). dependencies устанавливаются всегда, а devDependencies — только при разработке. Это помогает оптимизировать сборку и развертывание приложения.
Подробнее

Почему важно коммитить package-lock.json в репозиторий?

  • Рейтинг:

    4

  • Сложность:

    3

package-lock.json фиксирует точные версии всех установленных зависимостей и их подзависимостей. Без него разные разработчики или CI-системы могут получить разные версии пакетов, что приведет к неожиданным ошибкам. Коммит этого файла гарантирует, что все будут использовать одинаковое окружение. Это критически важно для стабильности и предсказуемости проекта.
Подробнее
  • Рейтинг:

    5

  • Сложность:

    3

  • Рейтинг:

    5

  • Сложность:

    4

  • Рейтинг:

    4

  • Сложность:

    3

  • Рейтинг:

    4

  • Сложность:

    3

  • Рейтинг:

    4

  • Сложность:

    2