javascript - DOM 中的 JavaScript 是异步代码还是同步代码?

标签 javascript asynchronous dom synchronous

最初的问题是:“Vanilla javaScript DOM 查询。如何确保异步代码在前端完成后再继续?”

但我更改了标题,以便搜索查询更有用,并显示答案中实际给出的信息。

您会注意到,根据我提供的代码,我认为 DOM 操作是异步的。答案指出不是。


如果这样的代码是异步的:

let elements = document.querySelectorAll('div');

那么,如何确保所有 'div' 元素在循环之前都已存储到变量 'elements' 中?

let elements = document.querySelectorAll('div');
//how do you know that all of the elements will 
//have been retrieved in time to run this for loop:
for(let i = 0 ; i < elements.length ; i++) {    
    let div = elements[i];    console.log(div);   
}

最佳答案

If code like this is asynchronous

不是 querySelectorAll 不是异步函数。

how do you make sure that all of the 'div' elements have been stored to the variable

什么都不做。

您可能需要等待的唯一原因是,如果 previous 函数正在向 DOM 异步添加内容,在这种情况下,您必须等待该函数完成。

关于javascript - DOM 中的 JavaScript 是异步代码还是同步代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48694823/

相关文章:

javascript - postman :如何在测试中迭代我的 JSON 文件?

c# - 在控制台应用程序中使用 Async 和 await

c++ - 如何在 C++ 中处理异步套接字接收?

html - CSS:当 child a:事件时选择父元素?

javascript - nnnn-nnnn 形式的字符串在电子表格中显示为日期或以其他方式错误显示

javascript - 从 vue.js 中的子发射传递时值未定义

javascript - jQuery 的 $.引用?

javascript/ Selenium : get the window from the document object

没有框架的javascript幻灯片动画

asynchronous - 如何检查在哪个异步CUDA调用中出现哪个CUDA错误?