Почему таким образом осуществляют операцию присвоения?
Потому, что приращение.
out - строка
mass - массив целых чисел.
"+" для строк в JS - конкатенация: склейка значений. 
Если значение переменной выражения не строковая литера - переменная приводится к ней непосредственно перед конкатенацией.
Вариант: out = out + mass[i]; равен out += mass[i];
потому что написав  out = mass[i]; ты теряешь предыдущее значение переменной.