Создание нового слова по списку позиций

Соберите символы в порядке заданных индексов. Уточните нумерацию: ниже индексы начинаются с нуля и относятся к Unicode-кодовым точкам.

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

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

Соберите символы в порядке заданных индексов. Уточните нумерацию: ниже индексы начинаются с нуля и относятся к Unicode-кодовым точкам.

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

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

Условие

Функция получает строку и массив чисел‑индексов, после чего формирует новое слово, выбирая символы из исходной строки в соответствии с указанными позициями из массива.

Ответ

Соберите символы в порядке заданных индексов. Уточните нумерацию: ниже индексы начинаются с нуля и относятся к Unicode-кодовым точкам.

function buildWord(text, indices) {
  const chars = [...text];
  return indices.map(index => {
    if (!Number.isInteger(index) || index < 0 || index >= chars.length) throw new RangeError('Индекс вне строки');
    return chars[index];
  }).join('');
}

Например, buildWord('кот', [2,1,0]) вернёт 'ток'; повторный индекс повторяет символ, пустой список даёт пустую строку. Графемы из нескольких кодовых точек потребовали бы отдельной сегментации. Исходные строка и массив не изменяются.

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

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

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

Подробнее