您现在的位置是:首页 > Javascript
当前栏目
JavaScript sync and async(同步和异步)
2023-02-18 15:32:26 时间
推荐四篇文章:
- JavaScript 是单线程的深入分析
- JavaScript 运行机制详解:再谈 Event Loop
- JavaScript 异步编程的4种方法
- JavaScript 既是单线程又是异步的,请问这二者是否冲突,以及有什么区别?
一个重要前提:JavaScript 是单线程的,并且只有一个主线程。
我们常说的 JavaScript 异步通常指的是 ajax,准确的来说,它并不是 JavaScript 中的异步,当 JavaScript 执行 ajax 的时候,会让浏览器开启一个线程进行执行,执行完成之后会有个回调函数,然后浏览器会告诉 JavaScript:“我 ajax 执行完了,你该执行回调函数了。”
看一段示例 JavaScript 代码:
$(document).ready(function () {
var index = 1;
console.log(1);
var response = $.ajax({
type: "get",
url: '/ajax/get2',
async: false
}).responseText;
console.log(2);
$.ajax({
url: '/ajax/get1',
type: 'get',
dataType: 'text',
success: function (data) {
console.log(3);
}
});
search();
});
function search() {
console.log(4);
}
输出结果:
1
2
4
3
执行示意图:
![](https://images2015.cnblogs.com/blog/435188/201509/435188-20150915134938851-1660080798.png)
相关文章
- shiro中的JSP标签支持
- Java技术点-json转对象,对象转json
- SpringBoot+SpringDataJpa @Query之 JPQL使用书写模板(模糊查询and条件查询)
- Spring Boot中的Freemarker模版引擎引用css和js的正确姿势
- Node.js解压版的环境配置及相关常用命令
- JSP学习笔记(6)—— 自定义MVC框架
- JSP学习笔记(5)——Servlet、监听器、过滤器、MVC模式介绍
- Jsp学习笔记(4)——分页查询
- APIJSON简单使用
- JSP学习笔记(3)——JSTL 标签库
- JSP学习笔记(1)——Jsp指令、动作元素和内置对象
- JavaScript ES6 Promise对象
- Web前端——JavaScript扩展补充
- Web前端——表单提交和Js添加选项
- Web前端——JavaScript练习
- Web前端——JavaScript笔记
- 一个 JavaScript 最佳实践的例子
- 最短路径:Dijstra(迪杰斯特拉)算法
- OSS阿里云上传文件 前端js下载url跨域问题
- 基于 hugging face 预训练模型的实体识别智能标注方案:生成doccano要求json格式