js中async函数结合promise的小案例浅析


Posted in Javascript onApril 14, 2019

js中async函数结合promise的小案例浅析

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
*{
margin: 0;
padding: 0;
list-style: none;
}
.box{
height: 15px;
margin-top: 20px;
transform: translateX(-100%);
transition: all 1s linear;
}
button{
margin-top: 30px;
}
</style>
</head>
<body>
<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
<button id="btn">点击开始</button>
<script>
const box=document.querySelectorAll(".box")
box.forEach((item,index)=>{
item.style.cssText=`width:${100+index*15}px;background:rgb(${Math.random()*255},${Math.random()*255},${Math.random()*255})`
})
    btn.onclick=async function(){
      for(let i=0;i<box.length;i++){
        await fn(box[i])
      }
    }
    function fn(el){
      return new Promise((resolve,reject)=>{
        el.style.transform=`translateX(0)`;
        el.addEventListener("transitionend",function(){
          resolve();//为什么调用这个成功函数
        })
      })
    }
  </script>
</body>
</html>
Javascript 相关文章推荐
jquery DOM操作 基于命令改变页面
May 06 Javascript
通过下拉框的值来确定输入框是否可以为空的代码
Oct 18 Javascript
js跑步算法的实现代码
Dec 04 Javascript
jQuery手机拨号界面特效代码分享
Aug 27 Javascript
深入分析node.js的异步API和其局限性
Sep 05 Javascript
基于JavaScript实现熔岩灯效果导航菜单
Jan 04 Javascript
jquery获取select,option所有的value和text的实例
Mar 06 Javascript
javascript编写简易计算器
May 06 Javascript
微信小程序loading组件显示载入动画用法示例【附源码下载】
Dec 09 Javascript
说说node中的可读流和可写流的区别
Jun 01 Javascript
react配置antd按需加载的使用
Feb 11 Javascript
vue-resource:jsonp请求百度搜索的接口示例
Nov 09 Javascript
详解Vue-cli3 项目在安卓低版本系统和IE上白屏问题解决
Apr 14 #Javascript
Vue入门学习笔记【基本概念、对象、过滤器、指令等】
Apr 13 #Javascript
JS+CSS3实现的简易钟表效果示例
Apr 13 #Javascript
JS实现倒序输出的几种常用方法示例
Apr 13 #Javascript
JS实现马赛克图片效果完整示例
Apr 13 #Javascript
ES6入门教程之let、const的使用方法
Apr 13 #Javascript
ES6入门教程之变量的解构赋值详解
Apr 13 #Javascript
You might like
CentOS下PHP安装Oracle扩展
2015/02/15 PHP
Java中final关键字详解
2015/08/10 PHP
一些常用且实用的原生JavaScript函数
2010/09/08 Javascript
浅析Prototype的模板类 Template
2011/12/07 Javascript
JavaScript中几种排序算法的简单实现
2015/07/29 Javascript
js贪吃蛇游戏实现思路和源码
2016/04/14 Javascript
javascript 动态样式添加的简单实现
2016/10/11 Javascript
JavaScript实现图像模糊化的方法实例
2017/01/15 Javascript
性能优化之代码优化页面加载速度
2017/03/01 Javascript
AngularJS全局警告框实现方法示例
2017/05/18 Javascript
JS自定义函数实现时间戳转换成date的方法示例
2017/08/27 Javascript
JS动态添加的div点击跳转到另一页面实现代码
2017/09/30 Javascript
nodejs express配置自签名https服务器的方法
2018/05/22 NodeJs
微信小程序实现多选删除列表数据功能示例
2019/01/15 Javascript
小程序实现可拖动的悬浮按钮
2020/09/07 Javascript
[03:03]2014DOTA2西雅图国际邀请赛 Alliance战队巡礼
2014/07/07 DOTA
windows上安装Anaconda和python的教程详解
2017/03/28 Python
spyder常用快捷键(分享)
2017/07/19 Python
python正则表达式re之compile函数解析
2017/10/25 Python
Python enumerate索引迭代代码解析
2018/01/19 Python
python找出完数的方法
2018/11/12 Python
Django基础知识 URL路由系统详解
2019/07/18 Python
python搜索包的路径的实现方法
2019/07/19 Python
python Matplotlib底图中鼠标滑过显示隐藏内容的实例代码
2019/07/31 Python
在Tensorflow中实现梯度下降法更新参数值
2020/01/23 Python
浅谈django框架集成swagger以及自定义参数问题
2020/07/07 Python
分享PyCharm最新激活码(真永久激活方法)不用每月找安装参数或最新激活码了
2020/12/27 Python
css3 column实现卡片瀑布流布局的示例代码
2018/06/22 HTML / CSS
理肤泉俄罗斯官网:La Roche-Posay俄罗斯
2018/07/24 全球购物
意大利在线眼镜精品店:Ottica Lipari
2019/11/11 全球购物
Linux不知道文件后缀名怎么判断文件类型
2012/04/26 面试题
大学生新闻专业个人自我评价
2013/11/12 职场文书
三八妇女节活动总结
2014/05/04 职场文书
群众路线教师自我剖析材料
2014/09/29 职场文书
2015年消费者权益日活动总结
2015/02/09 职场文书
焦点访谈观后感
2015/06/11 职场文书