什么是Promise?
Promise是异步编程的一种解决方案,在ES6中被统一规范,其实是一个构造函数
回调地狱
回调地狱(Callback Hell)是异步编程中经常遇到的一个问题,特别是在使用大量嵌套回调函数时。当你需要在一个异步操作完成后执行另一个异步操作,而这些操作又依赖于前一个操作的结果时,很容易就会出现多层嵌套的回调函数,这种代码结构就被称为回调地狱。而Promise就是解决回调地狱的一种方案
需求:
通过AJAX请求id ,再根据id请求用户名.再根据用户名,再根据用户名获取email
<!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 src="JQuery.js"></script>
<script>
// 拿到a的数据后才去请求b,拿到b的数据后再去请求c 这就叫回调地狱
// 像这种回调嵌套回调的写法就叫回调地狱
$.ajax({
method: "get",
url: "data.json",
success(res) {
console.log(res);
$.ajax({
method: "get",
url: "data2.json",
success(res) {
console.log(res);
$.ajax({
method: "get",
url: "data3.json",
success(res) {
console.log(res);
},
});
},
});
},
});
</script>
</body>
</html>
Promise的基本使用
Promise是一