• Можете объяснить, что проиходить в каждой строчке кода?

    @n1ksON
    мидл
    var factorial = function(n) { // объявление функции
        var cnt // объявление пустой переменной cnt
        var res = 1 // объявление переменной res со значением 1
        for (cnt = n; cnt > 1; cnt--) { // цикл, по типу: for (var i = 0; i < 5; i++)
    // то есть пустой переменной cnt присваивается значение, 
    // которое пришло в аргументе n при вызове функции (в данном случае 4), 
    // цикл выполняется пока cnt больше 1, на каждой итерации от cnt отнимается 1
            res *= cnt; // значение res умножается на cnt
        }
        return res // возвращает получившееся значения res
    }
    console.log(factorial(4)) // выполнение функции с n = 4
    Ответ написан
    Комментировать