Lander, чем здесь?
Т.е. заполнить сначала массив, а затем выполнить преобразованием массива в строку с заменой стандартного разделителя на разделитель "_" - более читабельно чем: составлять строку из чисел, и если это последнее число не ставить "_"?
function getString( num ) {
let result;
for ( let i = 0; num >= i; i++ ) {
result = result + i;
if (i != num){ result = result + '_'; }
}
return result;
}
getString(5);