先说结论 debugger不会阻塞浏览器渲染,但是alert会阻塞浏览器渲染 啥也不说上代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div id="root">
1
</div>
</body>
<script>
setTimeout(()=> {
const el = document.getElementById('root');
el.innerHTML = '2';
debugger;
// alert();
console.log('我要做一些事情嘎嘎嘎');
}, 3000);
</script>
</html>
//首先我们看到浏览器渲染出来2了
但是如果我们吧alert注释放开,并注释debugger则发现页面我们虽然改了root下面的innerHtml但是页面没有渲染