Итератор и Генератор в Javascript?

На странице Мозиллыитераторы и генераторы есть утверждение:

В то время как пользовательские итераторы являются полезным инструментом, их создание требует тщательного программирования из-за необходимости явно поддерживать их внутреннее состояние. Генераторы предоставляют мощную альтернативу: они позволяют вам определить итерационный алгоритм, написав единственную функцию, которая может поддерживать свое собственное состояние.

Что касается приведенного выше объяснения, нельзя ли написать итерационный алгоритм без генераторов, таких как:

Array[Symbol.iterator] = function(){
    return {
        next: function(){
            //logic
            return {
                value: "",
                done:false
            }
        }
    }
}

Не могу понять мою голову. Может ли кто-то объяснить, что является основной причиной, по которой они создали альтернативу, мне кажется, не сильно отличается.

Ответы на вопрос(2)

Ваш ответ на вопрос