ES6 从入门到精通 # 17:Promise 的基本使用
Posted 凯小默
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6 从入门到精通 # 17:Promise 的基本使用相关的知识,希望对你有一定的参考价值。
说明
ES6 从入门到精通系列(全23讲)学习笔记。
Promise
Promise 相当于一个容器,保存着未来才会结束的事件(异步操作)的一个结果
- 对象的状态不受外界影响(Pending 进行中,Resolved 成功,Rejected 失败)
- 一旦状态改变,就不会再变,任何时候都可以得到这个结果
let pro = new Promise((resolved, rejected) =>
)
console.log(pro)
let pro = new Promise((resolved, rejected) =>
let res =
code: 200,
desc: "处理成功",
data:
name: "kaimo"
setTimeout(() =>
if(res.code === 200)
resolved(res.data);
else
rejected(res.desc);
, 1000)
)
pro.then(val =>
console.log(val)
, err =>
console.log(err)
)
let pro = new Promise((resolved, rejected) =>
let res =
code: 500,
desc: "服务器内部异常",
setTimeout(() =>
if(res.code === 200)
resolved(res.data);
else
rejected(res.desc);
, 1000)
)
pro.then(val =>
console.log(val)
, err =>
console.log(err)
)
封装一下,可以传参数
function getData(ms)
return new Promise((resolved, rejected) =>
setTimeout(() =>
resolved("如果你追到我,我就让你嘿嘿嘿");
, ms)
)
getData(1000).then(res =>
console.log(res)
)
以上是关于ES6 从入门到精通 # 17:Promise 的基本使用的主要内容,如果未能解决你的问题,请参考以下文章
ES6 从入门到精通 # 19:Promise 对象的其它方法
ES6 从入门到精通 # 19:Promise 对象的其它方法
ES6 从入门到精通 # 18:使用 Promise 封装 ajax