4-Promis中then方法的返回结果由什么决定
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<script>
let p = new Promise((resolve, reject) => {
resolve("Ok");
});
// 执行then方法
let result = p.then(
(value) => {
console.log(value);
// 1.抛出错误---then方法返回的结果就是失败,值为抛出的错误
// throw "出了问题!";
// 2.返回结果是一个非Promise类型的对象---then方法返回的结果就是成功,值为返回的结果
// return 123;
// 3.返回结果是一个Promise对象---then方法返回的结果由返回状态当中Promise对象的状态来决定,值为返回结果当中Promise的成功/失败的值
// return new Promise((resolve, reject) => {
// resolve("Success");
// reject("Error")
// });
},
(reason) => {
console.warn(reason);
}
);
console.log(result, "000000"); //返回的状态确定了,但是没有返回结果,所以返回的结果是undefined
</script>
</body>
</html>