В вашем втором примере порядок выполнения будет такой
Стр 1, 2, 3 (тут в свойство onclick запишется ссылка на функцию)
Потом стр. 9, 10 (str будет еще '')
А строки 5-7 будут выполнены только после клика.
Вот так надо.
const a1 = [4, 5, 6, 7, 12, 34, 56, 78, 90, 11];
let str = '';
document.querySelector('.b1').onclick = () => {
a1.forEach(a => {
let d = (a * 2);
str += d + ',';
})
let a1_res = str.split(',');
console.log(a1_res);
}