首页
mac
it
登录
6mi
u
盘
搜
搜 索
it
es6 语法 (Promise)
es6 语法 (Promise)
mac
2022-06-30
19
{
//
基本定义
let ajax =
function
(callback) { console.log(
'执行');
//
先输出 1 执行
setTimeout(
function
() { callback
&&
callback.call() },
1000
); }; ajax(
function
() { console.log(
'timeout1');
//
后输出 timeout1
}) } { let ajax
=
function
() { console.log(
'执行2');
//
先输出 1 执行2
return
new
Promise(
function
(resolve, reject) { setTimeout(
function
() { resolve() },
1000
) }) }; ajax().then(
function
() { console.log(
'Promise', 'timeout2');
//
后输出 timeout1 Promise timeout2
}) } { let ajax
=
function
() { console.log(
'执行3');
//
先输出 1 执行3
return
new
Promise(
function
(resolve, reject) { setTimeout(
function
() { resolve() },
1000
) }) }; ajax().then(
function
() { console.log(
'执行4');
//
后输出 2 执行4
return
new
Promise(
function
(resolve, reject) { setTimeout(
function
() { resolve() },
2000
); }); }) .then(
function
() { console.log(
'timeout3');
//
后输出 3 timeout3
}) } { let ajax
=
function
(num) { console.log(
"执行5"
);
return
new
Promise(
function
(resolve, reject) {
if
(num > 5
) { resolve() }
else
{
throw
new
Error("出错了"
); } }); } ajax(
6).then(
function
() { console.log(
"log", 6);
//
log 6
}).
catch
(
function
(err) { console.log(
"catch"
, err); }); ajax(
3).then(
function
() { console.log(
"log", 3
); }).
catch
(
function
(err) { console.log(
"catch", err);
//
catch Error: 出错了
}); }
更多专业前端知识,请上
【猿2048】www.mk2048.com
转载请注明原文地址: https://mac.8miu.com/read-72917.html
最新回复
(
0
)