当前位置: 首页 > news >正文

【django】扩展

1. Promise

1.1 对象和状态

是什么?是前端开发时js中的一个对象(包裹)。【对象】【异步请求】# 对象中有一个状态的值,status
# 创建对象,不赋值,status=pendding
let v1 = new Promise(function(resolve, reject){})# 创建对象,为resolve赋值,status=fufilled
let v2 = new Promise(function(resolve, reject){resolve("okk")
})
可以简写为: let v2 = Promise.resolve("okk")# 创建对象,为reject赋值,status=rejected
let v3 = new Promise(function(resolve, reject){reject("okk")
})
可以简写为: let v3 = Promise.reject("haha")

1.2 回调函数

对象 = Promise ...
对象.then(函数1, 函数2)
对象.then(函数3, 函数4)
对象.catch(函数5)关于回调函数的执行:- 状态=pendding,回调函数都不会被执行- 状态=fufilled,基于then添加进去的第一个回调函数,就会被触发执行。即函数1和函数3- 状态=rejected,基于then添加进去的第二个回调函数,就会被触发执行,且基于catch添加的函数也会被执行。即函数2和函数4和函数5

示例

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<script type="text/javascript">let v1 = new Promise(function (resolve, reject) {// 状态为pendding// resolve("OK")  // 状态为fufilled 值为"OK"reject("INFO")  // 状态为rejected 值为"INFO"})v1.then(function (res) {console.log(res)},function (reason) {console.log(reason)})
</script>
</body>
</html>

1.3 then的返回值

对象=Promise ...
返回值 = 对象.then(函数1, 函数2)
返回值.then(函数3,函数4)
如果在函数1中,返回一个新的Promise对象,接下来执行函数3或函数4,取决于:函数1返回的那个Promise对象的状态。

示例

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<script type="text/javascript">let v1 = new Promise(function (resolve, reject) {// resolve("INFO")  // 状态为rejected 值为"INFO"reject("INFO")})let v2 = v1.then(function (res) {console.log("111: ", res)console.log("v1: fufilled")return new Promise(function (resolve, reject) {resolve("hhh")  // 状态为fufilled 值为"INFO"})},function (reason) {console.log("222: ", reason)console.log("v1: rejected")return new Promise(function (resolve, reject) {reject("aaa")  // 状态为rejected 值为"INFO"})})v2.then(function (res) {console.log("333: ", res)},function (reason) {console.log("444: ", reason)})
</script></body>
</html>
http://www.lryc.cn/news/490767.html

相关文章:

  • 逆向破解识别基础
  • MFC 下拉框显示问题和控件自适应窗口大小
  • Docker 的存储驱动及其优缺点
  • 单片机系统的性能指标有哪些?
  • 波点音乐自动点击
  • HTTP 消息结构
  • ESP32学习笔记_Bluetooth(1)——蓝牙技术与 BLE 通信机制简介
  • C0034.在Ubuntu中安装的Qt路径
  • jdbc学习——SQL注入
  • JavaEE-线程安全专题
  • Android 设备使用 Wireshark 工具进行网络抓包
  • 物联网无线局域网WiFi开发(一):WiFi智能家居解决方案
  • GMAN解读(论文+代码)
  • 速盾:ddos防御手段哪种比较好?高防cdn怎么样?
  • Spring:AOP切入点表达式
  • 《文件操作》
  • python特殊字符序列
  • 卷积神经网络(CNN)中的批量归一化层(Batch Normalization Layer)
  • LLaMA-Mesh: Unifying 3D Mesh Generation with Language Models 论文解读
  • 【ESP32CAM+Android+C#上位机】ESP32-CAM在STA或AP模式下基于UDP与手机APP或C#上位机进行视频流/图像传输
  • ESP-KeyBoard:基于 ESP32-S3 的三模客制化机械键盘
  • 28.UE5游戏框架,事件分发器,蓝图接口
  • Puppeteer 和 Cheerio 在 Node.js 中的应用
  • Unity2D 关于N方向俯视角 中 角色移动朝向的问题
  • pytorch 和tensorflow loss.item()` 只能用于只有一个元素的张量. 防止显存爆炸
  • 链表刷题|判断回文结构
  • 海盗王集成网关和商城服务端功能golang版
  • SCI 中科院分区中位于4区,JCR分区位于Q2 是什么水平?
  • 微知-Mellanox网卡的另外一种升级方式mlxup?(mlxup -d xxx -i xxx.bin)
  • 《Shader入门精要》透明效果