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

Giải thích các hàm Generator trong JavaScript?

Máy phát điện

JavaScript hỗ trợ Chức năng của trình tạo Đối tượng Trình tạo . Một chức năng của trình tạo giống như một hàm bình thường, nhưng bất cứ khi nào nó cần tạo một giá trị, nó sẽ sử dụng ' sản lượng 'từ khóa thay vì' trả về '. ' năng suất Từ khóa 'tạm dừng thực thi chức năng và gửi một giá trị trở lại trình gọi. Nó có một khả năng rằng nó có thể tiếp tục chức năng từ nơi nó đã bị bỏ dở.

cú pháp

function* generator(){
   yeild 1;
   yeild 2;
}

Ví dụ

Trong ví dụ sau, sử dụng hàm trình tạo , các số tự nhiên 10,9 và 8 đã được in ra. Thay vì in từng số riêng lẻ, chúng ta có thể chạy vòng lặp for và in bất kỳ số nào chúng ta cần.

<html>
<body>
<script>
   function * number() {
      var num = 10;
      while (true) {
         yield num--;
      }
   }
   var gen = number();
   document.write(gen.next().value);
   document.write("</br>");
   document.write(gen.next().value);
   document.write("</br>");
   document.write(gen.next().value);
</script>
</body>
</html>

Đầu ra

10
9
8