function x(){
window.setTimeout(function(){
foo();
if(notDone()){
x();
};
},1000);
}
Mối quan tâm của tôi là tăng trưởng ngăn xếp không bị chặn. Tôi nghĩ rằng đây không phải là đệ quy vì cuộc gọi x() trong bộ đếm thời gian dẫn đến một bộ khung ngăn xếp hoàn toàn mới dựa trên một công văn mới trong công cụ JS.Đây có phải là đệ quy hay không
Nhưng đọc các mã như một anh chàng JS không lỗi thời nó khiến tôi cảm thấy khó chịu
Một thêm câu hỏi phụ, những gì xảy ra nếu tôi lên kế hoạch một cái gì đó (dựa trên toán học chứ không phải là nghĩa đen) dẫn đến không chậm trễ . Điều đó có thực thi tại chỗ hay nó sẽ được thực hiện ngay lập tức không đồng bộ hoặc việc triển khai đó được xác định
Không .. nó đặt hẹn giờ và tồn tại chức năng. Tương tự khi bộ hẹn giờ tắt - nó đặt bộ hẹn giờ mới và tồn tại lại chức năng. – Cheery
có thể trùng lặp của [tại sao funcion được gọi bởi setTimeout không có giới hạn callstack?] (Http://stackoverflow.com/q/24631041/1048572) hoặc [Recynion Javascript không đồng bộ] (http://stackoverflow.com/q/17090292/1048572)? – Bergi