当前位置: 首页 > news >正文

网站更改目录做301湖北最专业的公司网站建设平台

网站更改目录做301,湖北最专业的公司网站建设平台,小程序平台介绍怎么写,网站开发vs2015是什么async和await两种语法结合可以让异步代码像同步代码一样。 一、async函数 async函数的返回值为Promise对象promise对象的结果由async函数执行的返回值决定 async function fn() {// 返回一个字符串return 字符串;// 返回的结果不是一个Promise类型的对象&#xf…

async和await两种语法结合可以让异步代码像同步代码一样。

一、async函数

  • async函数的返回值为Promise对象
  • promise对象的结果由async函数执行的返回值决定
async function fn() {// 返回一个字符串return '字符串'// 返回的结果不是一个Promise类型的对象,返回的结果就是成功的Promise对象。return;// 抛出错误,返回的结果是一个失败的Promisethrow new Error('出错啦!');// 返回的结果如果是一个Promise对象return new Promise((resolve,reject)=>{// resolve('成功的数据');reject('失败的数据')});
}const result = fn();
console.log(result);// 调用then方法
result.then(value => {console.log(value);
}, reason => {console.warn(reason);
})

二、await

  • await必须写在async函数中
  • await右侧的表达式一般为Promise对象
  • await返回的是Promise成功的值
  • await的Promise失败了,就会抛出异常,需要通过try…catch捕获处理
// 创建promise对象
const p = new Promise((resolve, reject) => {// resolve("用户数据");reject("失败!!");
})
// await要放在async函数中
async function main() {try {let result = await p;console.log(result);} catch (error) {console.log(error);}
}main();

三、async和await结合

// 1.引入js模块
const fs = require('fs');// 读取“.md”文件
function weixue() {return new Promise((resolve, reject) => {fs.readFile('./resourse/为学.md', (err, data) => {// 如果失败if (err) reject(err);// 如果成功resolve(data);});});
}function yougan() {return new Promise((resolve, reject) => {fs.readFile('./resourse/有感.md', (err, data) => {// 如果失败if (err) reject(err);// 如果成功resolve(data);});});
}
function guankan() {return new Promise((resolve, reject) => {fs.readFile('./resourse/观看.md', (err, data) => {// 如果失败if (err) reject(err);// 如果成功resolve(data);});});
}// 2.声明一个async函数
async function main() {// 获取“.md”文件的内容// await返回的结果是成功的值let Weixue = await weixue();let Yougan = await yougan();let Guankan = await guankan();console.log(Weixue.toString());console.log(Yougan.toString());console.log(Guankan.toString());}main();

四、async与await结合封装ajax请求

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head><body><script>// 发送AJAX请求,返回的结果是一个Promise对象function sendAJAX(url) {return new Promise((resolve, reject) => {// 1.创建对象const x = new XMLHttpRequest();// 2.初始化x.open('GET', url);// 3.发送x.send();// 4.事件绑定x.onreadystatechange = function () {if (x.readyState === 4) {if (x.status >= 200 && x.status < 300) {// 成功resolve(x.response);}else {// 失败reject(x.status);}}}})}// 测试1  then方法的使用// const result = sendAJAX('https://api.apiopen.top/getJoke').then(value => {//     console.log('成功', value);// }, reason => {//     console.log('失败', reason);// });// 测试2  async与await的使用  一般用axios请求async function main() {try {// 发送AJAX请求const result = await sendAJAX('https://api.apiopen.top/getJoke');const tianqi = await sendAJAX('https://v0.yiketianqi.com/life/yearavg');console.log('成功', result,'\n', tianqi);}catch (error) {console.log('失败', error);}}main();</script></body></html>
http://www.yayakq.cn/news/651144/

相关文章:

  • 传奇手游官方网站中小型企业建设一个网站大概需要多少钱
  • 简单aspx网站开发百度指数是怎么计算的
  • 南京网站设计公司排名电子印章在线制作网站
  • 广东泰通建设有限公司网站最大的高仿手表网站
  • 国外获奖网站做网站需要什么配置的笔记本
  • 全国网站建设哪家好怎样设计个人网站
  • 深圳网站建设领先深圳网络推广公司
  • 湖北省建设银行网站网络优化公司哪家好
  • 月租网站空间桓台网站推广
  • 手机建站网站网页怎么制作四页
  • 西安专业网站制作服务建设中英文网站
  • 生态建设网站wordpress百度云链接地址
  • a5站长平台网站建设的流程该怎么确定
  • qq群推广用什么网站好没有网站可以做淘宝客吗
  • 教育网站建设 培训网站建设网站开发人月薪
  • 成都网站建设培训网络营销的方法和手段
  • 北滘网站设计网站开发报告样式
  • 长春网站设计880元凤岗金属制品东莞网站建设技术支持
  • 五大免费资源网站杭州关键词优化平台
  • 可以做调查问卷的网站企业网站建设流程介绍
  • 国外 网站源码江苏徐州网站建设
  • 专业建筑公司网站建设一个网站选择的服务器
  • 阿里巴巴国际站用户规模开发网站公司的简介
  • 网站icp备案号查询沈阳核工业建设工程总公司网站
  • 最近三天发生的重要新闻网站优化是外包还是自己做
  • 深圳建网站兴田德润团队网站建设公司销售招聘
  • 网站开发保密合同范本wordpress缓存清除
  • 网站建设调查表yy简历网
  • wordpress公众号同步优化网站排名解析推广
  • 网站设计登录界面怎么做网站建设公司做销售好不好