Xem cách Senior họ hander error async await như thế nào? | Async await javascript

แชร์
ฝัง
  • เผยแพร่เมื่อ 1 ธ.ค. 2024

ความคิดเห็น • 70

  • @hieunguyen6094
    @hieunguyen6094 3 ปีที่แล้ว +11

    cứ tỉ lệ 80/20 anh nhé, rất thích các video khó và sâu của anh. Chúc anh và gia đình sức khoẻ.

    • @anonystick
      @anonystick  3 ปีที่แล้ว +3

      Ồ, một comment động lực đây rồi. Tks em nhé!

  • @locthanh7057
    @locthanh7057 ปีที่แล้ว +1

    Xem video của anh rất sướng, cám ơn anh nhiều. Chúc anh và gia đình thật nhiều sức khỏe anh nhé.

  • @HaiNguyen-jb4jx
    @HaiNguyen-jb4jx 2 ปีที่แล้ว +2

    mình làm theo cách này để custom 1 hàm try catch chung cho cả team sài, sau này đặt log trong hàm đó cũng có thể check được hết cách lỗi của tất cả cả hàm try catch trong hệ thống tiện thật sự

    • @huynhcongchien6607
      @huynhcongchien6607 ปีที่แล้ว

      Ý kiến quá hay anh ơi, cảm ơn anh 🤩

  • @dreon1008
    @dreon1008 ปีที่แล้ว +1

    level 3 giống như bên Golang handle error khá là dễ hiểu gọn gàng

  • @hoclamdev2018
    @hoclamdev2018 2 ปีที่แล้ว

    video hay quá , chúc anh và gia đình sức khỏe

  • @banhgao3521
    @banhgao3521 ปีที่แล้ว +2

    theo em thì vẫn nên ưu tiên cái thứ 2 hơn, dễ đọc dễ hiểu nhất cho những người đi sau dễ sửa chữa.

  • @mrolala1992
    @mrolala1992 3 ปีที่แล้ว

    view đang ok hơn rồi đấy bác. Chúc bác thành công

  • @nguyenduc4406
    @nguyenduc4406 3 ปีที่แล้ว +3

    E nghĩ ntn, mình try catch 1 phát gói cả 3 cái await lại,
    Xử lý tập trung phân loại errr trong catch bằng cách tạo ra các custom exception cho từng promise để catch bắt dc

    • @tranminhthang2113
      @tranminhthang2113 3 ปีที่แล้ว

      theo kinh ngiệm của mình thì trong nhiều trường hợp rất khó để xử lý nên dùng cách này là tối ưu nhất

    • @z39-phamgiangnam74
      @z39-phamgiangnam74 2 ปีที่แล้ว +1

      Gói cả 3 lại khi cái trên lỗi thì cái dưới sẽ không thực hiện tiếp. Try catch riêng từng cái khi 1 cái lỗi thì các cái sau vẫn chạy

  • @lethienngan
    @lethienngan ปีที่แล้ว +4

    Hồi xưa mình cũng làm 1 hàm awaitWrapper y như giáo chủ vậy. Xong đến lúc code implement bị đồng nghiệp kêu làm màu, code chi dài dòng, sao không làm kiểu then.catch như kiểu level 2 trong clip. Tức quá mà cãi k lại số đông nên thôi 😂

    • @duykhanhnguyen9274
      @duykhanhnguyen9274 4 หลายเดือนก่อน

      Thì đúng là lv2 là tối ưu nhất cho mấy case ngắn như này rồi
      Lv3 chỉ tốt với những case xử lý logic nhiều ở 2 phần result và result thì code nó sẽ tường minh hơn lv2

  • @TonyNguyenTin
    @TonyNguyenTin ปีที่แล้ว +1

    Cảm ơn bác Annoy

  • @tranminhthang2113
    @tranminhthang2113 3 ปีที่แล้ว +1

    chuổi videos của a rất hay

    • @anonystick
      @anonystick  3 ปีที่แล้ว

      Cảm ơn Thắng!

  • @danneytee
    @danneytee 2 ปีที่แล้ว +1

    e thấy cái cachs thứ 2 dễ hiểu mà ngắn gọn hơn. a làm thêm video về js đi ạ

    • @anonystick
      @anonystick  2 ปีที่แล้ว +1

      Uhm, ok em! Tks em!

  • @KhangNguyen-kq2iw
    @KhangNguyen-kq2iw 2 ปีที่แล้ว +1

    mới biết tới kênh, nhờ thấy nhiều đề xuất từ kênh và thấy nội dung trên kênh thật sự chật lượng. Nhưng em góp ý nhỏ xíu là tiết tấu video nên nhanh hơn tẹo nữa thì ng xem sẽ dễ xem hơn

    • @anonystick
      @anonystick  2 ปีที่แล้ว

      Ok, cảm ơn bạn. Mình sẽ cố gắng xem lại

  • @tranvandung5361
    @tranvandung5361 2 ปีที่แล้ว +3

    Thầy có thể dạy express qua hẳn dự án thực tế có phân quyền các thứ đc ko ạ.Xem thầy code quá đỉnh lun

  • @tim90s
    @tim90s 3 ปีที่แล้ว +1

    Hay quá bác!

  • @TP-kj2sm
    @TP-kj2sm ปีที่แล้ว +1

    sao cách 3 của bác lại có 2 await liên tiếp mà vẫn chạy bình thường nhỉ?

  • @hangtran4863
    @hangtran4863 3 ปีที่แล้ว +1

    giọng anh hay ghia ^^

  • @phatho6593
    @phatho6593 2 ปีที่แล้ว +1

    Hay quá anh

  • @tranhuy517
    @tranhuy517 ปีที่แล้ว

    qua hay

  • @namhoai5282
    @namhoai5282 ปีที่แล้ว +1

    level 3 dễ nhìn quá

  • @Jonathan-zd7bd
    @Jonathan-zd7bd 3 หลายเดือนก่อน +1

    anh ơi tại sao ở đây lại dùng 2 cái await ạ ?

  • @yughiole7088
    @yughiole7088 10 หลายเดือนก่อน

    mình đang ko hiểu 1 chút, theo mình hiểu await nó tương đương với .then(); vậy tại sao level 2 lại await promise.then().catch()?, như vậy có thừa quá ko ạ?

  • @thewatt2895
    @thewatt2895 ปีที่แล้ว

    Cách thứ 3 anh viết khá giống cách handle error trong golang

  • @nickieferrante5487
    @nickieferrante5487 ปีที่แล้ว +1

    Anh cho em hỏi tại sao khi anh chạy cách 2 thì lại in ra "resolve" còn 2 cách kia không có ạ?

    • @patriarchalzen
      @patriarchalzen ปีที่แล้ว

      Do cách 2 có console.log(Resolve) đó bạn! :D

  • @mak8naf0813
    @mak8naf0813 ปีที่แล้ว

    cách level 3 giống với cách xử lý error của golang, cá nhân em thích cách level 3 nhất

  • @khaihoannguyen9446
    @khaihoannguyen9446 2 ปีที่แล้ว +1

    Cảm ơn anh đã chia sẻ kiến thức rất hay. Nhưng cho e hỏi: Ở phút 9:00, câu lệnh [error, result] = await await handleRequest(request('a')) nghĩa là gì ạ. Sao lại dùng 2 lần await vậy ạ? Rất mong anh giải đáp thắc mắc của e.

    • @trungnam5920
      @trungnam5920 2 ปีที่แล้ว

      Ảnh copy dư thôi kkk

  • @nguyentinhdn0507
    @nguyentinhdn0507 2 ปีที่แล้ว +1

    anh cho em hỏi vì sao lại phải dùng 2 cái await vậy anh, em vẫn chưa hiểu lắm. cám ơn a nhiều

    • @thaingocnguyen1015
      @thaingocnguyen1015 2 ปีที่แล้ว

      Bác ấy viết dư thôi bác, 1 await là đủ

  • @devina1957
    @devina1957 3 ปีที่แล้ว

    hay a

  • @hoangvietphan8719
    @hoangvietphan8719 2 ปีที่แล้ว +1

    video rất hữu ích anh, không liên quan nhưng cho em hỏi kinh nghiệm làm việc của anh đã trên 10 năm chưa ạ :)))

    • @anonystick
      @anonystick  2 ปีที่แล้ว +1

      Cảm ơn em! Anh trên con số đó em à. :)

    • @hoangvietphan8719
      @hoangvietphan8719 2 ปีที่แล้ว +1

      @@anonystick hèn gì , anh có nhiều nghiệp vụ hay thiệt , em dev chủ yếu làm theo yêu cầu của khách hàng cho xong , chứ ít khi suy nghĩ những luồng điều kiện có thể ảnh hưởng đến prod của mình ( em làm cũng trên 3 năm rồi )

  • @vietkhang7656
    @vietkhang7656 3 ปีที่แล้ว

    Trang web giup em rất nhiều, em cảm ơn !

  • @hdtphat1730
    @hdtphat1730 3 ปีที่แล้ว +1

    nhìn code giống go quá :3

    • @anonystick
      @anonystick  3 ปีที่แล้ว

      Nhìn kỹ đấy, y chang!

  • @buukhanhong40
    @buukhanhong40 2 ปีที่แล้ว +1

    Em hay dùng level3

  • @autumnwater181
    @autumnwater181 3 ปีที่แล้ว +1

    ở level 3 bác dùng 2 await await handlerRequest hả bác

    • @anonystick
      @anonystick  3 ปีที่แล้ว

      1 cái thôi em, nhầm á :D. Sr anh em, giờ mới để ý.... Lỗi to quá :D

    • @yogapassion
      @yogapassion 2 ปีที่แล้ว

      @@anonystick dùng 2 cái vẫn chạy được mà, thấy trong bài anh dùng 2 cái await vẫn chạy được đấy

  • @lehoanglong9794
    @lehoanglong9794 2 ปีที่แล้ว

    Cho mình hỏi ở line 41, sao lại có 2 await nhỉ. Hay là tác giả viết thừa thế

    • @misonosenpai3168
      @misonosenpai3168 2 ปีที่แล้ว +1

      1 cai thoi ban. Tac gia confirm la bi nham chut thoi

  • @phatphamminh5304
    @phatphamminh5304 3 ปีที่แล้ว +1

    Anh owii anh có thể làm video về xử lí API vs axios trong FE khi mà call api data bị fail được không ạ...
    Ví dụ như cái category mà tự nhiên call data ko lên :((
    Em cảm ơn anh nhiều ạ

  • @KhangNguyen-kq2iw
    @KhangNguyen-kq2iw 2 ปีที่แล้ว +1

    Anh ơi cho em hỏi là viết v chuẩn hơn đúng k ạ, tại vì cách của anh nó sẽ k phân biệt đc result nào của promise nào
    ```
    async function getData() {
    const [err1, result1] = await handleRequest(getApi("a"));
    if (err1) {
    console.log("loi 1", err1);
    }
    const [err2, result2] = await handleRequest(getApi("b"));
    if (err2) {
    console.log("loi 2", err2);
    }
    const [err3, result3] = await handleRequest(getApi("c"));
    if (err3) {
    console.log("loi 3", err3);
    }
    }
    ```

  • @sometimesalways1259
    @sometimesalways1259 2 ปีที่แล้ว +1

    sao k dùng promise.all cho gọn hơn bác nhỉ?

    • @anonystick
      @anonystick  2 ปีที่แล้ว +1

      Đâu phải lúc nào cùng dùng `promise.all` đâu bạn.

    • @sometimesalways1259
      @sometimesalways1259 2 ปีที่แล้ว

      @@anonystick mình đang nói trường hợp của bác mà, data trả về k phụ thuộc nhau thì mình dùng thui chớ pải hk bác?

    • @trungtang2483
      @trungtang2483 2 ปีที่แล้ว

      @@sometimesalways1259 trong trường hợp này dùng `promise.all` thì mình nghĩ là không thích hợp vì: nếu chỉ 1 trong 3 promise có lỗi thì vẫn sẽ nhảy vào catch làm ảnh hưởng tới 2 promise còn lại + khi có lỗi thì cũng sẽ không biết được là lỗi do promise nào nhỉ @@ mình nghĩ thế thôi cũng chưa test thử kk

    • @RinkaMizuki
      @RinkaMizuki ปีที่แล้ว

      @@trungtang2483 ở đây có thể sử dụng Promise.allSettled([promise]) .Promise.allSettled sẽ đợi tất cả các promise trả về kết quả dù reject hay resolve

  • @fisher7781
    @fisher7781 2 ปีที่แล้ว

    ở ví dụ 1, cho em hỏi mình có thể gộp trong 1 khối try catch và ok hơn thì xài Promise.all nữa cũng okay mà anh

    • @duyanh6909
      @duyanh6909 2 ปีที่แล้ว

      nhưng làm thế thì 1 promise bị reject lại ảnh hưởng đến tất cả cái còn lại, đây là logic độc lập dù promise1 lỗi thì những promise sau vẫn hoạt động bình thường

  • @ducphan9753
    @ducphan9753 3 ปีที่แล้ว +2

    gom 3 promise vao trong 1 try

    • @anonystick
      @anonystick  3 ปีที่แล้ว

      Vào trong thì không biết của thằng nào ???

  • @Mymusic-zi4ic
    @Mymusic-zi4ic 2 ปีที่แล้ว +1

    senior??

    • @anonystick
      @anonystick  2 ปีที่แล้ว

      Dạ Anh! Có gì sai hả anh?