Как поставить задержку в цикле for?
Вы умудрились наступить сразу на 2 грабли. 
1 Замыкания 
2 Асинхронный код в теле цикла
for (i in array){
    (function (m) {
        setTimeout(function () {
            change(array[m])
        }, 2000)
    })(i)
}
Код который я привел - разрулит замыкание, а в предыдущем ответе возьмите ф-ю для паузы и почитайте по ссылке про циклы.
Создай функцию, например timer
function timer(ms) {
    return new Promise(res => setTimeout(res, ms));
}
и вызывай её в асинхронной функции, где тебе нужна задержка
в твоем случае добавь async перед названием функции
async function change(params) {
...
await timer(1000);
}
подробнее можно прочитать тут