Computer >> Máy Tính >  >> Lập trình >> Javascript

JavaScript Sleep () hàm?

Ngủ ()

Với sự trợ giúp của Sleep () chúng ta có thể tạo một hàm để tạm dừng thực thi trong một khoảng thời gian cố định. Trong các ngôn ngữ lập trình như C và Php chúng tôi sẽ gọi là ngủ (giây) . Java có thread.sleep () , python có time.sleep () ĐI thời gian. Ngủ (2 * thời gian. Thứ hai) .

javascript không có các loại chức năng ngủ. Nhưng chúng ta nên cảm ơn lời hứa chức năng async / await trong ES 2018. Vì những tính năng này đã giúp chúng tôi sử dụng sleep () dễ dàng nhất có thể. Hãy thảo luận ngắn gọn về nó.

cú pháp-1

sleep(Time in ms).then(() => {
//// code
})

Chúng ta có thể sử dụng chức năng sleep với sau đó gọi lại như hình trên.

cú pháp-2

const work = async () => {
await sleep(Time in ms)
//code
}
work()

Chúng tôi có thể sử dụng chức năng ngủ với chức năng async / await như hình trên.

Ví dụ

Trong ví dụ sau, chúng tôi đã sử dụng sleep () với chức năng async / await . Ở đây, chức năng ngủ được đi kèm với await để tiếp tục quá trình tố tụng. Ban đầu là văn bản trong hàm không đồng bộ " Xin chào Tutorix "được hiển thị sau khi chức năng này được khởi động. Sau đó, chức năng này sẽ bị tạm dừng bằng cách sử dụng chức năng ngủ trong 3 giây. Một lần khoảng thời gian được hoàn thành, văn bản (" Chào mừng bạn đến với ........ ") sau chức năng ngủ được hiển thị. Nó được lặp lại cho đến khi kết thúc vòng lặp, có nghĩa là tổng cộng văn bản sẽ được lặp lại 19 lần như được hiển thị trong đầu ra.

<html>
<body>
<script>
   function sleep(ms) {
      return new Promise(resolve => setTimeout(resolve, ms));
   }
   async function Tutor() {
      document.write('Hello Toturix');
      for (let i = 1; i <20 ; i++) {        
         await sleep(3000);
         document.write( i +" "+"Welcome to tutorix" + " " + "</br>");
      }
   }
   Tutor()
</script>
</body>
</html>

Đầu ra

Hello Tutorix
// after 3 secs
1 Welcome to tutorix
// after 3sec...and the text will repeat until the loop terminates for every 3 sec
2 Welcome to tutorix
3 Welcome to tutorix
4 Welcome to tutorix
5 Welcome to tutorix
6 Welcome to tutorix
7 Welcome to tutorix
8 Welcome to tutorix
9 Welcome to tutorix
10 Welcome to tutorix
11 Welcome to tutorix
12 Welcome to tutorix
13 Welcome to tutorix
14 Welcome to tutorix
15 Welcome to tutorix
16 Welcome to tutorix
17 Welcome to tutorix
18 Welcome to tutorix
19 Welcome to tutorix