return await Promise ile return Promise farki
programming, typescript, javascript, promise, await, return
return promise
ve return await promise
arasฤฑndaki fark, hata yakalama ve fonksiyonun dรถnรผล deฤerinin zamanlamasฤฑ ile ilgilidir.
return promise
ifadesi, promise
'in รงรถzรผlmesini beklemez ve hemen promise
'i dรถndรผrรผr. Bu durumda, promise
'in รงรถzรผlmesi veya reddedilmesi, fonksiyonun dฤฑลฤฑnda yรถnetilir.
return await promise
ifadesi, promise
'in รงรถzรผlmesini bekler ve promise
'in รงรถzรผm deฤerini dรถndรผrรผr. Bu durumda, promise
'in รงรถzรผlmesi veya reddedilmesi, fonksiyonun iรงinde yรถnetilir ve hata yakalama (try/catch
) bloklarฤฑ kullanฤฑlabilir.
Ancak, genellikle return await promise
kullanฤฑmฤฑ gereksizdir ve ESLint gibi bazฤฑ linterlar tarafฤฑndan uyarฤฑ olarak iลaretlenir. รรผnkรผ async
fonksiyonlar zaten bir Promise
dรถndรผrรผr ve await
ifadesi genellikle try/catch
bloklarฤฑ iรงinde hata yakalamak iรงin kullanฤฑlฤฑr.
Bir fonksiyon iรงerisinde return await promise
ile return promise
kullanฤฑmฤฑ arasฤฑnda pratikte รถnemli bir fark bulunmaktadฤฑr. Bu fark, รถzellikle hata yรถnetimi ve fonksiyonun async olup olmadฤฑฤฤฑna baฤlฤฑdฤฑr. Detaylฤฑca aรงฤฑklamak gerekirse:
return promise
kullanฤฑmฤฑ: Bu kullanฤฑmda, promise doฤrudan รงaฤrฤฑlan yere geri dรถndรผrรผlรผr. Fonksiyon iรงindeki promise'in รงรถzรผmlenmesi veya reddedilmesi, fonksiyonu รงaฤฤฑran รผst seviyedeki kod tarafฤฑndan ele alฤฑnฤฑr. Bu durumda, promise, fonksiyonun dฤฑลฤฑna taลฤฑnmฤฑล olur ve fonksiyonun dรถnรผล deฤeri olarak promise nesnesi dรถner.return await promise
kullanฤฑmฤฑ: Buradaawait
, promise'in รงรถzรผlmesini bekler ve sonucu dรถner. Eฤer promise reddedilirse, hata o noktada ele alฤฑnฤฑr ve fonksiyonun iรงindeki bir try/catch bloฤu ile yakalanabilir. Bu kullanฤฑm, รถzellikle async fonksiyonlar iรงinde hata yรถnetimi yaparken tercih edilir. Bu kullanฤฑm, bir anlamda fonksiyonun iรงindeki hata iลleme mekanizmasฤฑnฤฑ daha kolay kontrol etmeye olanak tanฤฑr.
Performans Aรงฤฑsฤฑndan Farklar:
return await
kullanฤฑmฤฑ genellikle gereksiz olabilir ve bazฤฑ durumlarda hafifรงe daha yavaล olabilir รงรผnkรผ JavaScript motoru ekstra bir bekleyiล (wait) durumunu iลlemek zorundadฤฑr. Ancak, bu bekleyiล hata yakalama ve fonksiyon iรงindeki iล akฤฑลฤฑnฤฑ yรถnetme aรงฤฑsฤฑndan รถnemlidir.return promise
daha hฤฑzlฤฑ ve daha doฤrudan bir yaklaลฤฑm saฤlar รงรผnkรผ ekstra bir adฤฑm olmaksฤฑzฤฑn promise'i doฤrudan dรถndรผrรผr.
Sonuรง olarak:
Eฤer fonksiyonunuz iรงinde hata iลleme yapmanฤฑz gerekiyorsa veya fonksiyon รงฤฑktฤฑsฤฑnฤฑn baลka bir deฤerle deฤiลtirilmesi gerekiyorsa,
return await
kullanmanฤฑz daha uygun olabilir.Ancak, sadece bir promise'i dรถndรผrรผp, hata iลlemeyi ya da sonuรง iลlemeyi fonksiyonu รงaฤฤฑran kod parรงasฤฑna bฤฑrakmak istiyorsanฤฑz,
return promise
kullanฤฑmฤฑ daha temiz ve etkili olacaktฤฑr.
Last updated
Was this helpful?