- 同步和异步的区别是什么?分别举例
- 一个关于setTimeout的笔试题
- 前端使用异步的场景有哪些
判断有没有阻塞前端
console.log(100) setTimeout(function () { console.log(200) // 未阻塞,没有在这儿停顿1s并打印200 }, 1000) console.log(300) // 100 300 200
console.log(100) alert(200) // 1秒后点击确认 console.log(300)
在可能发生等待的状况,等待过程当中不能像alert同样阻塞程序运行,所以,全部的等待状况都须要异步web
<img>
加载// Ajax请求demo console.log('start'); $.get('./data1.json', function (data1) { console.log(data1); }); console.log('end'); // start end 等待Ajax执行
// <img>加载demo console.log('start'); var img = document.createElement('img'); img.onload = function () { console.log('loaded'); }; img.src = '/xxx.png'; console.log('end'); // start end 等待图片加载
// 事件绑定demo console.log('start'); document.getElementById('btn1').addEventListener('click', function () { alert('clicked'); }); console.log('end'); // start end 等待元素点击事件发生
console.log(100) setTimeout(function () { console.log(200) }) console.log(300)
- 同步和异步的区别是什么?分别举例
- 一个关于setTimeout的笔试题
console.log(1) setTimeout(function () { console.log(2) }, 0) console.log(3) setTimeout(function () { console.log(4) }, 1000) console.log(5) // 1 3 5 2 1s后打印4
- 前端使用异步的场景有哪些
<img>
加载