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);
}