javascript同步代码什么是同步

问题描述 投票:0回答:4

既然同步意味着同时,而常规的 javascript 是按顺序、一行一行地运行的,为什么 js 的同步不称为异步呢?同样,为什么异步不称为同步,因为两件事同时发生

javascript asynchronous
4个回答
0
投票

js中的同步是指任务一个接一个地执行,每个任务都等待前一个任务完成后才开始。这会产生一种简单的、逐行的执行模式。异步执行允许任务启动,然后让程序继续运行,而无需等待它们完成,使用回调、promise 或 async/await 来处理完成。异步操作对于网络请求等非阻塞任务当然是必不可少的。

以下是两者的简单示例:

同步示例:

console.log('First');
console.log('Second');

异步示例:

console.log('First');
setTimeout(() => console.log('Second'), 1000); // this line executes after 1 second
console.log('Third'); // this line executes directly (before the setTimeout callback)

-1
投票

同步JS代码即使下一行不需要上一行的输出结果,也会等待上一行执行。 而异步。 JS 代码不会等待前面的代码执行完成,而是在后台运行,同时继续执行下一行代码。

我们可以使用

promise
async
await
来使用这些功能。

while

async
使函数异步。所以它可以在后台运行,
await
使异步。代码同步。所以JS等待它执行完成。

了解更多详情:developer.mozilla.org


-1
投票

在我看来,本机脚本或外部脚本的同步描述性使用存在重叠。 JavaScript 代码在 JS 代码中是逐行异步的。

这里的困惑在于描述外部 JS 脚本的正常解析、延迟解析和异步解析;来自 HTML。 HTML 遵循正常(同步)解析,当遇到标签时,它会停止解析 HTML,直到解析脚本资源(或模块),然后再继续解析 HTML。


-4
投票

Javascript 是同步的,因为执行与解析“同步”。

一行被解析,然后执行。

然后,解析下一行,然后执行。

每一行依次被解析、然后执行。

异步是指 Javascript 在解析一行后无法立即执行该行,因为它需要等待,首先,服务器发送响应或

Promise
被解析。

© www.soinside.com 2019 - 2024. All rights reserved.