Array#join(separator), но чтобы на выходе получался массив, а не строка.Например:
[1, 2, 3] => [1, 'sep', 2, 'sep', 3]
Естественно, задачка очень проста и решается кучей различных способов. Моей проблемой является не нахождение решения, а поиск его наиболее элегантного варианта.
Я перепробовал массу вариантов, но постоянно внутренний мир был недоволен. Хотелось, конечно, сделать в функциональном стиле, но красиво не вышло.
Совесть замолчала на следующей конечной реализации:
function insertSeparator(array, separator) {
var index = array.length - 1;
while (index) array.splice(index--, 0, separator);
return array;
}
Можно легко переделать как на расширение прототипа, так и на неразрущающий вариант.
А как выглядит элегантное решение на вашем языке?
Хорошего дня!