资讯专栏INFORMATION COLUMN

谈一谈javascript异步

Sourcelink / 932人阅读

摘要:从今天开始研究一下的异步相关内容,感兴趣的请关注同期异步系列文章推荐异步中的回调异步与异步之异步之异步之和异步之一异步之二异步实战异步总结归档什么是异步我们知道的单线程的,这与它的用途有关。

从今天开始研究一下javascript的异步相关内容,感兴趣的请关注

同期异步系列文章推荐
javascript异步中的回调
javascript异步与promise
javascript异步之Promise.all()、Promise.race()、Promise.finally()
javascript异步之Promise.resolve()、Promise.reject()
javascript异步之Promise then和catch
javascript异步之async(一)
javascript异步之async(二)
javascript异步实战
javascript异步总结归档

什么是js异步?

我们知道JavaScript的单线程的,这与它的用途有关。作为浏览器脚本语言,JavaScript的主要用途是与用户互动,以及操作DOM。这决定了它只能是单线程,否则会带来很复杂的同步问题。比如,假定JavaScript同时有两个线程,一个线程在某个DOM节点上添加内容,另一个线程删除了这个节点,这时浏览器应该以哪个线程为准?
所谓"单线程",就是指一次只能完成一件任务。如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推。
这种模式的好处是实现起来比较简单,执行环境相对单纯;坏处是只要有一个任务耗时很长,后面的任务都必须排队等着,会拖延整个程序的执行。常见的浏览器无响应(假死),往往就是因为某一段Javascript代码长时间运行(比如死循环),导致整个页面卡在这个地方,其他任务无法执行。
ajax的同步请求就会导致浏览器产生假死,因为它会锁定浏览器的UI(按钮,菜单,滚动条等),并阻塞所有用户的交互,jquery中的ajax有这样一个同步请求的功能,一定要慎用,尤其是在请求的数据量很大的时候,要避免使用同步请求。
举几个栗子

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/100876.html

相关文章

  • 一谈几种处理JavaScript异步操作的办法

    摘要:问题是处理完了,却也引发了自己的一些思考处理的异步操作,都有一些什么方法呢一回调函数传说中的就是来自回调函数。而回调函数也是最基础最常用的处理异步操作的办法。 引言 js的异步操作,已经是一个老生常谈的话题,关于这个话题的文章随便google一下都可以看到一大堆。那么为什么我还要写这篇东西呢?在最近的工作中,为了编写一套相对比较复杂的插件,需要处理各种各样的异步操作。但是为了体积和兼容...

    曹金海 评论0 收藏0
  • js技术 - 收藏集 - 掘金

    摘要:还记得刚开始学习的时候,内存管理前端掘金作为一门高级语言,并不像低级语言那样拥有对内存的完全掌控。第三方库的行代码内实现一个前端掘金前言本文会教你如何在行代码内,不依赖任何第三方的库,用纯实现一个。 (译) 如何使用 JavaScript 构建响应式引擎 —— Part 1:可观察的对象 - 掘金原文地址:How to build a reactive engine in JavaSc...

    Guakin_Huang 评论0 收藏0
  • js技术 - 收藏集 - 掘金

    摘要:还记得刚开始学习的时候,内存管理前端掘金作为一门高级语言,并不像低级语言那样拥有对内存的完全掌控。第三方库的行代码内实现一个前端掘金前言本文会教你如何在行代码内,不依赖任何第三方的库,用纯实现一个。 (译) 如何使用 JavaScript 构建响应式引擎 —— Part 1:可观察的对象 - 掘金原文地址:How to build a reactive engine in JavaSc...

    zhou_you 评论0 收藏0
  • 一谈Vuex

    摘要:是什么官方文档说道是一个专为应用程序开发的状态管理模式。触发之别名篇触发之对象展开运算符篇触发之对象展开运算符别名篇先引用官方文档的说法类似于,不同在于提交的是,而不是直接变更状态。 Vuex是什么 官方文档说道:Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化 什么是状态管理模式...

    nifhlheimr 评论0 收藏0
  • 一谈javascript面向对象

    摘要:从今天起我们开始讨论的面向对象面向对象概念理解面向对象语言有个标志它们都具有类的概念,通过类可以创建任意多个具有相同属性和方法的对象。 从今天起我们开始讨论javascript的面向对象 面向对象概念理解 面向对象语言有个标志=>它们都具有类的概念,通过类可以创建任意多个具有相同属性和方法的对象。面向对象有三大特性 封装 继承 多态 但JS中对象与纯面向对象语言中的对象是不同的 J...

    PiscesYE 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<