Middle
Promise пайда болгонго чейин эмне колдондуңуз?
sobes.tech AI
AIден жооп
Promise пайда болгонго чейин, callbackтер кеңири колдонулчу.
Callbackтердин мааниси:
Функция башка функцияга аргумент катары берилет жана белгилүү бир операция аяктагандан кийин ишке ашырылат.
Мисал:
// Асинхрон операцияны callback менен чакыруу мисалы
function fetchData(callback) {
setTimeout(() => {
const data = "Кээ бир маалыматтар";
callback(null, data); // Биринчи аргумент каталар, экинчи натыйжа
}, 1000);
}
fetchData((err, data) => {
if (err) {
console.error("Маалыматтарды алуудө каталар:", err);
} else {
console.log("Алушкан маалыматтар:", data);
}
});
Callbackтерди гана колдонуунун кемчиликтери:
- Callback Hell (Callback тозогу): Ичке киргизилген асинхрон операциялардын зеници, өтө кирип кеткен жана окуусу кыйын кодго алып келет.
- Ката иштетүү кыйынчылыктары: Ар бир деңгээлде каталарды өткөрүп берүү жана текшерүү керек.
- Стандартизацияланган ыкма жок: Төртүнчү тарап китепканалар callback үчүн ар башка келишимдерди колдонушу мүмкүн.
Promise пайда болгонго чейин колдонулган башка ыкмалар:
Promise пайда болгонго чейин, "чын" callbackтерден тышкары, китепканалар жана үлгүлөр асинхронду башкаруу үчүн колдонулчу, мисалы:
- Асинхрон китепканалар: Мисалы,
async(Node.js үчүн, бирок браузерде да колдонулушу мүмкүн). Асинхрон агымдарды башкаруу үчүн утилиттер сунуш кылышкан (параллелдик аткаруу, үзгүлтүксүз аткаруу). - Publisher/Subscriber (Pub/Sub) үлгүсү: Көбүрөөк кыйынчылык сценарийлери үчүн.
- EventEmitter: Node.js жана браузер чөйрөсүндө (мисалы,
EventEmitter).
Бирок, callbackтер көптөгөн асинхрондук операциялардын негизи бойдон калууда. Promise асинхронду иштетүүнүн структуралашкан, бириккен жана окула турган жолун сунуш кылды, жана көптөгөн "Callback Hell" көйгөйлөрүн чечти.