promise的一个简单易懂实例
2024-09-04 17:31:52
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>
</head> <body>
<script>
//生成一个0-2之间的随机数,如果小于1,则等待一段时间后返回成功,否则返回失败
function test(resolve, reject) {
var timeOut = Math.random() * 2;
console.log('set timeout to: ' + timeOut + ' seconds.');
setTimeout(function () {
if (timeOut < 1) {
console.log('call resolve()...');
resolve('200 OK');//成功的时候调用
}
else {
console.log('call reject()...');
reject('timeout in ' + timeOut + ' seconds.'); //失败的时候调用
}
}, timeOut * 1000);
}
// var promise = new Promise(test);
// promise.then(function(result){
// console.log('成功:', result);//200 OK
// }) // promise.catch(function(result){
// console.log("失败",result)
// })
var promise = new Promise(test).then(function(res){
console.log('成功:', res);//200 OK
}).catch(function(res){
console.log("失败",res)
})
</script>
</body> </html>
最新文章
- sql 语句
- 细说;(function ($, undefined){ })(jQuery); 的使用
- C#封装C++DLL
- jQuery 获取父窗口的元素 父窗口 子窗口(iframe)
- 使用grunt构建seajs项目
- shell script针对参数已经有配置好变量名称
- UVA 539 The Settlers of Catan dfs找最长链
- eclipse反编译插件
- 多路查找树之2-3-4树和B树 - 数据结构和算法82
- MapXtreme在asp.net中的使用之加载地图(转)
- Css Rest 方法
- 常用js方法整理(个人)
- keil5一点project就闪退
- Quartus prime 16.0 in_system memory content editor 使用
- java 大数据运算 BigInteger BigDecimal
- 20180831xlVBA_WorkbooksCosolidate
- [转]How rival bots battled their way to poker supremacy
- Netty 学习资料
- pta l3-3(社交集群)
- hdu 3068 Manacher算法