var arr = ["node.js", "Java", "C#"];
var newArr = [];
let promise = new Promise((resolve, reject) => {
        for(let i = 0; i < arr.length; i++) {
            setTimeout(() => {
                newArr.push(arr[i])
                resolve(newArr);
            }, 1000);
        }
});
promise
        .then(result => {
             alert(result);
         }
);
Now it alerts data after first loop. How to display data from async operation with promises, after it passes whole loop?
Desired behavior: Add data to newArr in async mode, and display it after loop ends.