Promise with for braek test

HTML

<script src="https://getfirebug.com/firebug-lite-debug.js"></script>

JavaScript

async function loop_break() {
    for (let i = 0; i < 10; i++) {
        const isExcept = await new Promise((resolve) => {
          if (i == 5) {
              throw new Error('test error');
          }
        	setTimeout(() => { resolve(i); }, Math.random() * 1000)
        }).catch((error) => {
            console.log('catched!?' + error);
            return error;
        });
        
        if (isExcept instanceof Error) {
          console.log('can break;!!!', isExcept);
        	break;
        }
        console.log(isExcept);
    }
};

async function loop_no_break() {
    for (let i = 0; i < 10; i++) {
        const isExcept = await new Promise((resolve) => {
          if (i == 5) {
              throw new Error('test error');
          }
        	setTimeout(() => { resolve(i); }, Math.random() * 1000)
        }).catch((error) => {
            console.log('catched!?' + error);
            return error;
        });

        console.log(isExcept);
    }
};

async function loop_foreach() {
    const test = [1, 2, 3, 4, 5];
    _.forEach(test, (i) => {
        const isExcept = await new Promise((resolve) => {
          if (i == 5) {
              throw new Error('test error');
          }
        	setTimeout(() => { resolve(i); }, Math.random() * 1000)
        }).catch((error) => {
            console.log('catched!?' + error);
            return error;
        });

        console.log(isExcept);
    });
}

//loop_break();
try {
  loop_no_break();
} catch (e) {
  console.log(e);
}