首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏阮一峰的网络日志

    Javascript异步编程4种方法

    你可能知道,Javascript语言的执行环境是"单线程"(single thread)。 所谓"单线程",就是指一次只能完成一件任务。 常见的浏览器无响应(假死),往往就是因为某一段Javascript代码长时间运行(比如死循环),导致整个页面卡在这个地方,其他任务无法执行。 为了解决这个问题,Javascript语言将任务的执行模式分成两种:同步(Synchronous)和异步(Asynchronous)。 本文总结了"异步模式"编程4种方法,理解它们可以让你写出结构更合理、性能更出色、维护更方便的Javascript程序。 一、回调函数 这是异步编程最基本的方法。 四、Promises对象 Promises对象是CommonJS工作组提出的一种规范,目的是为异步编程提供统一接口。

    92850发布于 2018-04-12
  • 来自专栏代码编写世界

    JavaScript异步编程4——Promise错误处理

    概述 在上一篇文章《JavaScript异步编程3——Promise的链式使用》中,通过Promise的链式使用,避免程序中多次嵌套回调(回调地狱)。 前者通过Promise的then()处理异常,只会运行功能的回调函数和失败的回调函数其中的一个;后者通过catch()处理异常,则更加像JavaScript的try/catch,在try{}中发生的错误会立即转到 参考 JavaScript Promises: An introduction

    98020发布于 2021-05-07
  • 来自专栏达达前端

    JavaScript的BOM编程,事件-第4

    标题图 目标 BOM编程 window和document对象 window对象的属性和方法 document对象的属性和方法 JavaScript中对象的分类 浏览器对象:window对象 window /tr> <input type="button" value="插入新行" onclick="insert()"> <script type="text/<em>javascript</em> images/del_1.jpg)" id="first"> <script type="text/<em>javascript</em> onclick="delRow()"> <input type="button" value="修改标题" onclick="updateRow()"> <script type="text/<em>javascript</em> s()"> <input type="button" value="start" onclick="ss()"> </form> <script type="text/<em>javascript</em>

    48030发布于 2019-07-03
  • 来自专栏JavaScript单字编程

    脑语言v0.5.8 2500令【单字编程

    图片脑语言v0.5.8 2500令【单字编程】【号】【单字】【多字】【英文】1 1脑 脑语言 naoyuyan2 配 配置 config3 班 班级 grade4 令 指令 command5 述 描述 distance69 达 到达 arrive70 朝 朝向 orient71 望 ■望 look72 跟 跟随 follow73 踪 追踪 trace74 巡 巡逻 patrol75 逻 逻辑学 evaluate76 4俺 吐 导出 export645 真 ■真 true646 假 ■假 false647 新 新对象 new648 崩 打破 break649 这 这对象 this650 又 否如 elif651 27猿 编程 (也称为“令”与“一令”),通过【单字编程】(并不仅是中文编程,而是混合英文关键字,但以单字为主的命名)也许是英文不太好时又希望能写代码的其中一种方式。 我在做脑语言【单字编程】系列的教程,先是《JavaScript单字编程》欢迎参与!20220709 广

    5.1K30编辑于 2022-07-11
  • 来自专栏程序技术知识

    javascript动态设置select下拉菜单字体大小

    本章节分享一段极其简单的代码实例,它使用javascript实现了动态设置select下拉菜单字体大小的功能。 代码实例如下: <!

    1.8K20编辑于 2021-12-28
  • 来自专栏编程学习之路

    JavaScriptJavaScript开篇基础(4

    3.document.getElementsByClassName('类名'); //根据类名获取集合,也就是伪数组 4.document.querySelector('选择器');//获取指定选择器的第一个元素对象 7.获取特殊元素html, document.documentElement;//获取html元素对象 4.事件基础 常用的事件: 鼠标事件: 当使用 JavaScript 的 DOM 操作 修改 元素的css样式时 , 有两种主要的方法 : 行内样式操作 element.style 类名样式操作 element.className 使用 element.style 可以直接在 JavaScript 中 设置元素的 行内样式 ; 行内样式 会直接作用于该元素 , 它权重优先级比css内部样式优先级高 , 可以直接指定样式属性的值 ; ">盒子模型元素


    <button id="changeButton">修改 style 属性</button> <script> // JavaScript

    39510编辑于 2024-11-05
  • 来自专栏全栈程序员必看

    javascript 基础_JavaScript高级编程

    目录 JavaScript高级知识总结(高级篇) 一、深入基础 1.1数据类型 1.2数据变量与内存 1.3对象 1.4函数 回调函数 1.5 IIFE 1.6函数中的this 二、函数高级 2.1原型与原型链 3.2.1原型链继承 3.2.2借用构造函数继承 3.2.3组合继承 四、线程机制与事件机制 4.1进程与线程 4.2定时器引发的思考 4.3JS是单线程的 4.4事件循环模型 4.5Web Workers JavaScript – test(); window – p.test(); p – new test(); 新创建的对象 – p.call(obj); obj <script type="text/<em>javascript</em> 的最小调度单元 多线程:在一个进程内,同时有多个线程运行 优点: 1.有效提升CPU的利用率 缺点: 1.创建多线程开销 2.线程间切换开销 3.死锁与状态同步问题 单线程: 优点:顺序<em>编程</em>简单易懂 – <em>JavaScript</em>的单线程,与它的用途有关 – 作为浏览器脚本语言,<em>JavaScript</em>的主要用途是与用户互动,以及操作DOM – 这决定了它只能是单线程,否则会带来很复杂的同步问题 3.代码的分类

    1.9K30编辑于 2022-09-24
  • 来自专栏阮一峰的网络日志

    Javascript编程风格

    Douglas Crockford是Javascript权威,Json格式就是他的发明。 去年11月他有一个演讲(Youtube),谈到了好的Javascript编程风格是什么。 下面,我根据这个演讲和Crockford编写的代码规范,总结一下"Javascript编程风格"。 所谓"编程风格"(programming style),指的是编写代码的样式规则。 这种说法不完全正确,程序员固然可以自由选择编程风格,但是好的编程风格有助于写出质量更高、错误更少、更易于维护的程序。 这一点,对于Javascript这种语法自由度很高、设计不完全成熟的语言尤其重要。 一、大括号的位置 绝大多数的编程语言,都用大括号({})表示区块(block)。 规则4:所有其他语法元素与左括号之间,都有一个空格。

    1.1K60发布于 2018-04-12
  • 来自专栏ops技术分享

    JavaScript 异步编程

    在我们学习的传统单线程编程中,程序的运行是同步的(同步不意味着所有步骤同时运行,而是指步骤在一个控制流序列中按顺序执行)。 什么时候用异步编程 在前端编程中(甚至后端有时也是这样),我们在处理一些简短、快速的操作时,例如计算 1 + 1 的结果,往往在主线程中就可以完成。主线程作为一个线程,不能够同时接受多方面的请求。 为了解决这个问题,JavaScript 中的异步操作函数往往通过回调函数来实现异步任务的结果处理。 当然,JavaScript 语法十分友好,我们不必单独定义一个函数 print ,我们常常将上面的程序写成: 实例 setTimeout(function () { document.getElementById ; console.log("2"); 异步 AJAX 除了 setTimeout 函数以外,异步回调广泛应用于 AJAX 编程

    83230发布于 2021-07-19
  • JavaScript 异步编程

    在我们学习的传统单线程编程中,程序的运行是同步的(同步不意味着所有步骤同时运行,而是指步骤在一个控制流序列中按顺序执行)。 什么时候用异步编程 在前端编程中(甚至后端有时也是这样),我们在处理一些简短、快速的操作时,例如计算 1 + 1 的结果,往往在主线程中就可以完成。主线程作为一个线程,不能够同时接受多方面的请求。 为了解决这个问题,JavaScript 中的异步操作函数往往通过回调函数来实现异步任务的结果处理。 当然,JavaScript 语法十分友好,我们不必单独定义一个函数 print ,我们常常将上面的程序写成: 实例 setTimeout(function () { document.getElementById // 主线程先执行 异步 AJAX 除了 setTimeout 函数以外,异步回调广泛应用于 AJAX 编程

    15710编辑于 2025-12-16
  • 来自专栏网络收集

    JavaScript入门(4

    4、函数 一、函数是什么? 函数,就是一个一系列JavaScript语句的集合,这是为了完成某一个会重复使用的特定功能。在需要该功能的时候,直接调用函数即可,而不必每次都编写一大堆重复的代码。 三、函数的调用 常用的函数调用方式有4种: (1)简单调用; (2)在表达式中调用; (3)在事件响应中调用; (4)通过链接调用; 四、特殊函数 JavaScript特殊函数有3种: (1)嵌套函数; 2、递归函数 递归函数是一种非常重要的编程技术,当年我在学习其他编程技术(如C、C++、Java等)都经常用到。 递归函数用于让一个函数从其内部调用其本身。 因为在JavaScript中是比较少用到递归函数的,递归函数往往都是在其他编程语言中用得比较多。到时候需要的时候我们回来翻翻就OK了。 内置函数由于已经在JavaScript语言内部定义好了的,也就是我们不需要自己定义就能用了。这样极大方便了我们的编程

    62760编辑于 2022-04-04
  • 来自专栏睡不着所以学编程

    JavaScript笔记(4)

    ); //undefined 注:JavaScript没有下标越界的错误,如果索引超出了元素的数量不会报错,结果是undefined. ) { console.log(arr1[i]); } 注意: i要从0开始,因为索引是从0开始的,索引最大到3,所以要<4. 那么还有一个问题,i < 4是我们数出来的,难道我们每次都要去数有多少个元素吗? let arr5 = [4, 6, 3]; arr5.length = 5; console.log(arr5); 我们将空的打印出来看看是什么. 修改数组索引号追加元素 console.log(all); let arr5 = [4, 6, 3]; arr5[3] = 'pink' arr5[4] = 'green' console.log

    39820编辑于 2022-09-20
  • 来自专栏睡不着所以学编程

    JavaScript高级(4)

    刚刚去复习了一下前三节,现在继续 ES6之前通过构造函数+原型实现面向对象编程 ES6之后通过类实现面向对象编程 类的本质 我们可以打印看看Star的类型 我们也可以简单的认为类就是构造函数的另外一种写法 prototype属性上 类创建的实例,里面也有__proto__指向类的prototype原型对象 所以ES6的类它的绝大部分功能,ES5都可以做到,新的class写法这是让对象原型的写法更加清晰,更像面向对象编程的语法而已

    32520编辑于 2022-09-20
  • 来自专栏网页前端

    JavaScript web编程

    100px auto; width: 410px; background-color: #fff; padding-top: 4px 2.jpg" alt="">

  • <img src="picture/<em>4</em>. 排他思想实现按钮变色 <body> <button>按钮1</button> <button>按钮2</button> <button>按钮3</button> <button>按钮<em>4</em><

  • 57320发布于 2021-04-19
  • 来自专栏OECOM

    javascript异步编程

    简单来说,异步编程就是在执行一个指令之后不是马上得到结果,而是继续执行后面的指令,等到特定的事件触发后,才得到结果。 也正是因为这样,我们常常会说: JavaScript 是由事件驱动的。 就以目前的标准来看,异步编程一般有一下几种方式:回调函数、Promise、Generator和await/async。 1. 在 JavaScript 中,Generator 的 function 与 函数名之间有一个 *, 函数内部使用 yield 关键词,定义不同的状态。 可以看到,虽然 Generator 函数将异步操作表示得很简洁,但是流程管理却不方便(即何时执行第一阶段、何时执行第二阶段) 4. await/async 这是在 ES 2016 中引入的新关键词,这将在语言层面彻底解决 JavaScript 的异步回调问题,目前可以借助 babel 在生产环境中使用。

    79510发布于 2020-07-01
  • 来自专栏Krryblog

    JavaScript 异步编程

    博客地址:https://ainyi.com/96 众所周知,JavaScript 是单线程的,但异步在 js 中很常见,那么简单来介绍一下异步编程 同步编程和异步编程 同步编程,计算机一行一行按顺序依次执行代码 ,当前代码任务执行时会阻塞后续代码的执行;典型的请求-响应模型就是这样,当请求调用一个函数或方法后,需等待其响应返回,然后执行后续代码 异步编程,执行当前任务时(执行中),也可直接执行下一个任务;多个任务并发执行 但在微观上只是把时间分成若干段,使多个进程快速交替地执行;如下图: [7557373da64ffd6d1effaac.jpg] 异步机制 由上面并发的解释,可以知道单线程可以实现类似多线程机制的这种执行方式;那么 JavaScript 单线程的异步编程可以实现多任务==并发执行== 重点实现 js 异步的方式,就是==事件循环==,之前写过关于事件循环的例子,可看:JavaScript 事件循环、异步和同步 事件循环 事件循环涉及到两个概念 :消息队列、任务 消息队列:也叫任务队列,存储待处理消息及对应的回调函数或事件处理程序 任务:js 区分同步任务和异步任务,代码执行就是在执行任务,也就是对应同步和异步的代码块 首先 JavaScript

    87530发布于 2020-09-15
  • 来自专栏ccylovehs

    JavaScript异步编程

    1.前言 平时开发经常会用到js异步编程,由于前端展示页面都是基于网络机顶盒(IPTV的一般性能不太好,OTT较好),目前公司主要采取的异步编程的方式有setTimeout、setInterval、requestAnimationFrame 放入任务队列中,等待同步任务执行完才能执行 再往下执行是timeout定时器,此为异步宏任务,也放入任务队列中,等待同步任务执行完、异步微任务才能执行 再往下是foo方法,此为同步任务,借用网络流行的一句话 “JavaScript foo、bar放入栈中,bar执行完就弹出栈,foo依次弹出) 关于并发模型和Event Loop 请看MDN(https://developer.mozilla.org/zh-CN/docs/Web/JavaScript /EventLoop) 3.异步编程 关于异步编程的方式,常用的定时器、ajax、Promise、Generator、async/await,详细介绍如下: 3.1.定时器 3.1.1.setTimeout 3.3.Promise Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。

    1.2K20发布于 2018-09-14
  • 来自专栏网页前端

    JavaScript web编程

    <script> //1.先准备好学生的数据 var dates = [{ name: '张三', subject: 'javascript ', score: 100 }, { name: '李四', subject: 'javascript', document.createElement('td'); td.innerHTML = '删除 ' tr.appendChild(td); } //4.

    1.3K10发布于 2021-04-22
  • 来自专栏前端进阶之路

    JavaScript异步编程

    但是,随着JavaScript面临的需求越来越多,它可以运行在浏览器、服务器、甚至是嵌入式设备上,为了满足这些需求,JavaScript的规模和复杂性也在持续增长,使用回调函数来管理异步也越来越让人痛苦 ,这一切,都需要更强大、更合理的异步方法,通过这篇文章,我想对目前已有JavaScript异步的处理方式做一个总结,同时试着去解释为什么会出现这些技术,让大家对JavaScript异步编程有一个更宏观的理解 Step4 - Async/Await 上面我们介绍了Promise和Generator,把这两者结合起来,就是Async/Await。 总结 本文通过四个阶段来讲述JavaScript异步编程的发展历程: 第一个阶段 - 回调函数,但会导致两个问题: 缺乏顺序性: 回调地狱导致的调试困难,和大脑的思维方式不符 缺乏可信任性: 控制反转导致的一系列信任问题 最后,希望大家可以通过这篇文章对JavaScript异步编程有一个更宏观的体系化的了解,我们一起进步。

    1.5K20发布于 2018-10-31
  • 来自专栏网页前端

    JavaScript web编程

    此代码通过js增加了两个li,通过两个不同的封装函数将li放在ul中,一个是放在前面,一个是放在后面。

    84510发布于 2021-04-22
  • 第 2 页第 3 页第 4 页第 5 页第 6 页第 7 页第 8 页第 9 页第 10 页第 11 页
    点击加载更多
    领券