一分钟简单理解同步和异步

简介: 因为js是单线程顺序向下执行的,同步指的是阻塞,通俗点讲就是你得等他执行完

因为js是单线程顺序向下执行的,同步指的是阻塞,通俗点讲就是你得等他执行完


let a=1
//这一条指的是同步,我没有使用方法,便于你理解意思,如果a=4不同步,则最后输出的应该是1
a=4
console.log(a)//4

然后我们再看异步

let a=1
//某异步方法
setTimeout(()=>{
     a=4
 },1000)
//不会等待setTimeout执行,a此时还是1
console.log(a)//1

那异步有什么用呢?

let a=1
//某异步方法
setTimeout(()=>{
     a=4
 },1000)
//用于异步修改某种值,比如异步方法可以是axios、ajax异步请求服务器上的数据
//前端页面先展示的是默认内容,请求成功之后显示服务器数据库的值用于前端渲染
setInterval(()=>{
    console.log(a)//1...1...1...4...4...4...4...4......4
},250)

异步解决方案


有时,需要处理异步带来的问题,就是数据还未改变就被调用,我们希望能够等待异步请求结束再进行数据访问。

也就是希望异步变成同步来处理,详见:js Promise与async/await用法详解

相关文章
|
前端开发 JavaScript UED
|
前端开发
异步转同步的几种方法
在循环等待中,我们可以使用一个变量来指示异步操作是否已完成。然后,我们可以在循环中检查该变量,如果它指示异步操作已完成,则退出循环。
571 0
|
7月前
|
负载均衡 算法 前端开发
同步和异步
同步和异步
95 0
|
7月前
|
Python
同步和异步的区别
同步和异步的区别
|
7月前
|
Java 数据处理 调度
异步、半同步、同步
异步、半同步、同步
172 0
|
JavaScript 前端开发 UED
同步和异步区别
同步和异步区别
162 0
|
7月前
同步和异步的区别?
同步和异步的区别?
178 0
|
7月前
|
存储 JavaScript 前端开发
|
7月前
|
前端开发 JavaScript
同步和异步有什么区别
同步和异步有什么区别
275 0
同步和异步[多线程的异步执行操作]
同步和异步[多线程的异步执行操作]
58 0