Видео: Async await JavaScript гэж юу вэ?
2024 Зохиолч: Lynn Donovan | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2023-12-15 23:50
Дүгнэж хэлэхэд, асинк / хүлээж байна бичихэд илүү цэвэр синтакс юм асинхрон Javascript код. Энэ нь таны кодын унших чадвар, урсгалыг сайжруулдаг. Хэрэглэхдээ анхаарах зүйлс асинк / хүлээж байна : Асинк функцүүд амлалт буцаана. Хүлээгээрэй зөвхөн дотор ашиглаж болно асинк блок.
Үүнийг анхаарч үзвэл, JavaScript дээр асинхрончлол гэж юу гэсэн үг вэ?
The асинк функцийн мэдэгдэл нь a асинхрон функц - AsyncFunction объектыг буцаадаг функц. Асинхрон функцууд нь үйл явдлын давталтаар дамжуулан кодын бусад хэсгээс тусдаа дарааллаар ажилладаг бөгөөд үүний үр дүнд далд Амлалт буцаадаг.
Мөн JS зангилаанд асинх болон хүлээлт гэж юу болохыг мэдэх үү? -тай Зангилаа v8, the асинк / хүлээж байна онцлогийг албан ёсоор нэвтрүүлсэн Зангилаа Амлалтууд болон функцүүдийн хэлхээг шийдвэрлэх. Функцуудыг нэг нэгээр нь гинжлэх шаардлагагүй, зүгээр л хүлээж байна Амлалт буцаадаг функц. Гэхдээ функц асинк Амлалт буцаах функцийг хүлээхээс өмнө зарлах шаардлагатай.
Хүмүүс бас асуудаг, би яаж async await ашиглах вэ?
Хэрэв чи ашиглах нь асинк функцийн тодорхойлолтын өмнө түлхүүр үг, та дараа нь болно хүлээж ашиглах функц дотор. Чи хэзээ хүлээж байна амлалт бол амлалт биелэх хүртэл үйл ажиллагааг блоклохгүйгээр түр зогсооно. Хэрэв амлалт биелсэн бол та үнэ цэнээ буцааж авна. Хэрэв амлалт татгалзвал татгалзсан үнэ цэнээ хаяна.
Хүлээлт нь JavaScript дээр юу хийдэг вэ?
Тодорхойлолт. The хүлээж байна илэрхийлэл нь синхрончлолын функцийн гүйцэтгэлийг амлалт шийдэгдэх хүртэл (өөрөөр хэлбэл биелэх эсвэл татгалзсан) түр зогсоож, биелсний дараа асинхронгуй функцийн гүйцэтгэлийг үргэлжлүүлэхэд хүргэдэг. Дахин үргэлжлүүлэх үед -ийн утга хүлээж байна илэрхийлэл нь биелсэн амлалт юм.
Зөвлөмж болгож буй:
JavaScript дахь глобал хувьсагч гэж юу вэ?
Глобал JavaScript хувьсагч Функцээс гадуур зарласан хувьсагч ГЛОБАЛ болдог. Глобал хувьсагч нь глобал хамрах хүрээтэй: Вэб хуудас дээрх бүх скрипт болон функцууд үүнд хандах боломжтой
Би await-г асинхронгүйгээр ашиглаж болох уу?
Үгүй. Хүлээж буй оператор нь зөвхөн асинхронгуй функцэд утга учиртай
Яагаад JavaScript дээр async await ашигладаг вэ?
Async функцууд нь үр дүнгээ буцаахын тулд далд Амлалт ашигладаг. Хэдийгээр та амлалтаа буцааж өгөхгүй байсан ч синхрончлолын функц нь таны кодыг амлалтаар дамжуулж байгаа эсэхийг баталгаажуулдаг. await нь синхрончлолын функц доторх кодын гүйцэтгэлийг блоклодог бөгөөд үүний нэг хэсэг нь (await мэдэгдэл) юм. Хүлээх нь үргэлж ганц амлалтын төлөө байдаг
JS зангилаа дахь await нь юунд хэрэгтэй вэ?
Node v8-ийн тусламжтайгаар синхрончлол/хүлээлтийн функцийг Амлалтууд болон функцүүдийн хэлхээг зохицуулах зорилгоор Node албан ёсоор нэвтрүүлсэн. Функцуудыг нэг нэгээр нь гинжлэх шаардлагагүй, зүгээр л Амлалт буцаах функцийг хүлээх хэрэгтэй. Гэхдээ амлалт буцаах функцийг хүлээхээс өмнө асинхронгуй функцийг зарлах шаардлагатай
Та хэзээ async defer ашиглах вэ?
Ихэвчлэн та боломжтой бол асинхрончлолыг ашиглахыг хүсдэг, дараа нь хойшлуулж, дараа нь ямар ч шинж чанаргүй. Энд дагаж мөрдөх зарим ерөнхий дүрмүүд байна: Хэрэв скрипт нь модульчлагдсан бөгөөд ямар ч скрипт дээр тулгуурлаагүй бол асинкийг ашиглана уу. Хэрэв скрипт нь өөр скрипт дээр тулгуурладаг эсвэл өөр скрипт дээр тулгуурладаг бол defer ашиглана уу