window.onload = async function() {
try {
await new Promise(function(resolve) {
console.log('a');
setTimeout(function() {
console.log('b');
resolve();
}, 500);
});
} catch {
console.error('error');
} finally {
console.log('c');
}
}
在 chrome 浏览器的 console 中执行
在 safari 浏览器的 console 中执行
可见:chrome 浏览器相比于 safari 浏览器对ES2015+语法的支持程度要高一些。