JavaScript #20: рекурсивные функции, остаточные аргументы, оператор расширения