TheBott, можно решить даже на уровне CSS: каждый 2-ой див – с таким-то свойством(что в вашем случае различно), каждый 3-ий – с таким-то свойством. То есть вместо присвоения различных классов описать дочерние дивы по кратности.
Можно то же самое и на уровне js решать: проверять кратность индекса итерируемого объекта и давать уже заветный класс.
Возможно, можно как-то "по-реактовски" решить - здесь я не подскажу.
Думайте в сторону div’а, превышающего по ширине ширину вьюпорта(видимой области) со скрытой полосой скроллбара и свойством overflow-x: scroll;, а у body { overflow-x: hidden; }
Kizzeon, Очистка данных первично присутствующих элементов на странице вместо которых будет вставлен JSON?
Если так, то не нужно ничего чистить при описанном мной подходе, innerHTML просто заменит собой все существующие дочерние элементы.