Как лучше добавлять новые элементы на страницу через js?
Когда бэкенд хорошо работает, пользователь не способен заметить ajax-запрос. В крайнем случае спокойно отнесётся к секундному появлению спинера. Так что нет, в третьем варианте страница не замедлится. Зато она замедлится в первых двух случаях, если у вас в базе станет не 200 элементов, а хотя бы 2000, не говоря уж о 20 миллиардах. А ещё веселее то, что такая выборка из базы может колом поставить вообще всех пользователей.
ВСЕГДА тащи из БД ровно столько,сколько нужно показать.Сразу нужно показать 20, остальное нажимая кнопки "Показать", "Скрыть".
вот это вот событие может и не наступить, скроллят товары 15%-34% покупашек, учись гуглить...