- vừa được xem lúc

Promise trong Javascript (Hiểu một cách đơn giản)

0 0 19

Người đăng: Tran Dinh Thang

Theo Viblo Asia

Promise

Javascript sinh ra bất đồng bộ để luồng hoạt động trong chương trình không bị block bởi những tác vụ tốn thời gian hoặc fetch data từ chỗ khác

và rồi Javascript phải sinh ra cách để xử lý bất đồng bộ

Xử lý bất động bộ là gì? Xử lý ở đây là chờ - data - của tác vụ bất động bộ trả về - để sử dụng data đó - cho nhiều mục đích khác nhau như hiển thị lên UI, tính toán các bước tiếp theo.

Callback, promise, async/await là các kỹ thuật giúp xử lý bất đồng bộ trong Javascript

Trong bài viết này mình nói về Promise:

1. Promise: new Promise((resolve, reject) => {})

Tạo ra một promise, trong promise đó sẽ triển khai tác vụ bất đồng bộ, và chờ tác vụ đó xử lý, nếu tác vụ bất đồng bộ đó thành công thì gọi hàm resolve còn thất bại thì gọi hàm reject

2. Promise.all(): Promise.all([promise1, promise2, ... , promiseN])

Chạy song song các promise. Và 1 là sẽ return tất cả promise resolve, hoặc 2 là nếu chỉ có 1 promise bị reject thì sẽ bỏ qua các promise còn lại (dù là resolve) và return promise reject đó

3. Promise.allSettled(): Promise.allSettled([promise1, promise2, ... , promiseN])

Tựa như Promise.all() nhưng khác chỗ là dù thành công hay thất bại đều trả về một mảng đầy đủ các promise

4. Promise.race(): Promise.race([promise1, promise2, ... , promiseN])

Chạy song song, promise nào xử lý nhanh nhất thì trả về promise đó mà không quan tâm đến các promise còn lại

5. Promise.any(): Promise.any([promise1, promise2, ... , promiseN])

Gần giống Promise.race(), khác chỗ là nếu gặp reject sẽ bỏ qua, chỉ trả về promise nhanh nhất và là resolve, nếu không có resolve nào hết thì throw error

Theo mình thấy thì method Promise.all() và Promise.any() là hữu ích nhất

Cảm ơn các bạn đã đọc

Bình luận

Bài viết tương tự

- vừa được xem lúc

Giới thiệu Typescript - Sự khác nhau giữa Typescript và Javascript

Typescript là gì. TypeScript là một ngôn ngữ giúp cung cấp quy mô lớn hơn so với JavaScript.

0 0 528

- vừa được xem lúc

Bạn đã biết các tips này khi làm việc với chuỗi trong JavaScript chưa ?

Hi xin chào các bạn, tiếp tục chuỗi chủ đề về cái thằng JavaScript này, hôm nay mình sẽ giới thiệu cho các bạn một số thủ thuật hay ho khi làm việc với chuỗi trong JavaScript có thể bạn đã hoặc chưa từng dùng. Cụ thể như nào thì hãy cùng mình tìm hiểu trong bài viết này nhé (go).

0 0 436

- vừa được xem lúc

Một số phương thức với object trong Javascript

Trong Javascript có hỗ trợ các loại dữ liệu cơ bản là giống với hầu hết những ngôn ngữ lập trình khác. Bài viết này mình sẽ giới thiệu về Object và một số phương thức thường dùng với nó.

0 0 158

- vừa được xem lúc

Tìm hiểu về thư viện axios

Giới thiệu. Axios là gì? Axios là một thư viện HTTP Client dựa trên Promise.

0 0 149

- vừa được xem lúc

Imports và Exports trong JavaScript ES6

. Giới thiệu. ES6 cung cấp cho chúng ta import (nhập), export (xuất) các functions, biến từ module này sang module khác và sử dụng nó trong các file khác.

0 0 113

- vừa được xem lúc

Bài toán đọc số thành chữ (phần 2) - Hoàn chỉnh chương trình dưới 100 dòng code

Tiếp tục bài viết còn dang dở ở phần trước Phân tích bài toán đọc số thành chữ (phần 1) - Phân tích đề và những mảnh ghép đầu tiên. Bạn nào chưa đọc thì có thể xem ở link trên trước nhé.

0 0 249