Имеется ввиду создание этого массива динамически по количеству элементов? Тогда
var offset = new Array($('.col').lenght()).fill(0), ...
Но .fill() не поддерживается IE (собственно со стороны браузера должна быть поддержка и Math.max(...offset)), что у вас по плану с этим не знаю, поэтому
тут описан и полифилл, если что.
А можно взять первую строку элементов, заполнить массив их высотами, а далее уже брать срез строк начиная со второй для обхода в цикле (как у вас и было в коде).
Либо код подправить так:
var offset = [], max;
$('.row').each(function(i, e) {
if(!i) {
$(e).children().each(function(k, o) {
offset.push(o.offsetHeight)
})
} else { //.....