Как уже сказали, то что у вас написано не имеет никакого отношения к созданию кнопок. Кнопка это элемент HTML, значит для того чтобы создать заданное количество кнопок через Javascript нужно обращаться к DOM.
После этого эти кнопки уже можно (и даже нужно) и в массив собирать для того чтобы вешать на них функционал
let n = prompt('Сколько кнопок нужно?');
for (var i = 0; i < n; i++) {
let div = document.createElement('div');
div.style.marginBottom = '20px';
let but = document.createElement('input');
but.type = 'button';
but.value = 'КНОПКА № ' + (i + 1);
document.body.appendChild(div);
div.appendChild(but);
}
Как создается элемент? Зачем пустой map? В тело map надо написать код
{
let b=document.createElement('button');
b.onclick='alert(index)';
document.body.appendChild(b);
b.innerText=index;
return b}