Создатель последовательных идентификаторов

Замкните счётчик и возвращайте его текущее значение с последующим увеличением. Тогда вызовы id() последовательно дадут 0, 1, 2 и далее.

Короткий ответ

Что ответить на собеседовании

Замкните счётчик и возвращайте его текущее значение с последующим увеличением. Тогда вызовы id() последовательно дадут 0, 1, 2 и далее.

Подробный разбор

Ответ с пояснениями

Условие

Разработайте функцию id, которая при каждом вызове выдаёт следующее число последовательности, начиная с нуля.

Ответ

Замкните счётчик и возвращайте его текущее значение с последующим увеличением. Тогда вызовы id() последовательно дадут 0, 1, 2 и далее.

function createId() {
  let next = 0;
  return () => next++;
}
const id = createId();
id(); // 0
id(); // 1

Каждый createId создаёт независимую последовательность. Значения уникальны только внутри этого генератора до потери точности Number; после перезагрузки счётчик начинается заново. Для идентификаторов между процессами или постоянными записями такой локальный счётчик не заменяет механизм базы данных.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее