При проходе по страницам из JS и добавления результатов через results.titles.push(res[1]) результаты не пишутся в файл сразу а только в конце. Получается что парсер все должен держать в памяти до окончания работы. Это может быть проблематично при большом количестве результатов. Можно ли из JS сохранять сразу в файл?
Это стандартная логика работы заданий в А-Парсере. Из JS парсера можно писать напрямую в файлы (если это действительно необходимо) используя nodejs модуль fs, пример есть здесь: https://a-parser.com/threads/3120/