Làm thế nào để bạn dừng một vòng lặp foreach?
Làm cách nào bạn có thể ngắt và quay lại vòng lặp Show
Mặc dù chúng tôi không thể ngắt và trả về từ một forEach. js Giải pháp trả về giá trị từ forEachĐã sao chép vào khay nhớ tạm. Sao chép Về cơ bản, ở đây chúng tôi đặt một biến bên ngoài vòng lặp 0, chúng ta có thể lấy và "trả lại" giá trị đúng. Tuy nhiên, điều này có thể được viết lại theo những cách tốt hơn. Dưới đây là năm lựa chọn thay thế khác nhau mà bạn có thể sử dụng khi cần thoát khỏi forEach Tìm cách để cải thiện kỹ năng của bạn? Sử dụng mảng. tìm thấyVí dụ trên cũng có thể được viết lại bằng phương thức 2. Đúng như tên gọi, phương thức 2 được sử dụng để tìm một phần tử cụ thể trong một mảng. Nó trả về một mục đầu tiên vượt qua bài kiểm tra trong chức năng gọi lại. Ví dụ tìm. js Trả về mục được cung cấp một vị ngữĐã sao chép vào khay nhớ tạm. Sao chép Đối với ví dụ đầu tiên, chúng tôi có một đối tượng được trả về vì mỗi ID là duy nhất. Nhưng trong trường hợp thứ hai, chúng tôi có thể có nhiều sản phẩm đang được giảm giá, nhưng chúng tôi vẫn chỉ nhận lại sản phẩm đầu tiên vượt qua bài kiểm tra. Nếu không có kết quả khớp, phương thức 2 chỉ cần trả về 5Sử dụng mảng. tìm IndexMột giải pháp tương tự nhưng hơi khác đối với 2 là sử dụng phương pháp 7. Trong trường hợp cần trả về chỉ số của phần tử bên trong mảng, bạn có thể sử dụng phương thức 7. Điều này sẽ trả về chỉ mục của phần tử nếu tìm thấy. Nếu không tìm thấy phần tử nào với vị từ, nó sẽ trả về -1 findIndex. js Trả về chỉ mục của mục hoặc -1 nếu không tìm thấy mục nàoĐã sao chép vào khay nhớ tạm. Sao chép Tìm cách để cải thiện kỹ năng của bạn? Sử dụng mảng. một số để trả về Đúng hoặc SaiTrong trường hợp bạn cần thoát khỏi một vòng lặp và trả về một giá trị boolean, chúng ta có thể sử dụng phương thức 9. Không giống như 2 nơi chúng tôi mong đợi một mục được trả về từ mảng, 9 trả về một 2 hoặc 3. Nếu ít nhất một mục trong mảng phù hợp với tiêu chí, phương thức này sẽ ngay lập tức trả về 2. Lấy ví dụ sau một số. js Trả về đúng hoặc sai nếu có ít nhất một mục vượt qua vị ngữĐã sao chép vào khay nhớ tạm. Sao chép Trong ví dụ đầu tiên, chúng tôi quay lại _______10_______2 vì chúng tôi chỉ quan tâm đến việc liệu có ít nhất một mặt hàng được giảm giá hay không. Tương tự như vậy, trong ví dụ thứ hai, chúng tôi chỉ quan tâm đến việc có ít nhất một mục dưới 0 hay không. Vì không có giá trị nào dưới 0 nên phương thức trả về 3Sử dụng mảng. every để kiểm tra mọi phần tử 7 rất giống với 9 về giá trị được trả về. hoặc trả lại một 2 hoặc 3. Nhưng thay vì kiểm tra xem một mục có vượt qua vị ngữ hay không, nó sẽ chỉ trả về 2 nếu tất cả các mục đều vượt qua bài kiểm tra. Hãy xem một ví dụ mọi. js Trả về true nếu tất cả các phần tử vượt qua vị ngữ. Ngược lại trả về falseĐã sao chép vào khay nhớ tạm. Sao chép Trong ví dụ đầu tiên, chúng tôi lấy lại 3 vì có thể không phải mọi sản phẩm đều được giảm giá. Tuy nhiên, chúng tôi có thể kiểm tra xem mọi sản phẩm đều có tên hay không, trong trường hợp đó, 7 sẽ 4 một giá trị 2Tìm cách để cải thiện kỹ năng của bạn? Sử dụng vòng lặp thông thườngCuối cùng nhưng không kém phần quan trọng, chúng ta cũng có thể sử dụng các vòng lặp thông thường hỗ trợ các câu lệnh 6 và 7. Trong ví dụ dưới đây, chúng tôi sử dụng vòng lặp 8, 9 và 0 thông thường để minh họa cách ngắt khi một câu lệnh là 2 Sử dụng for, for. vòng lặp of và while để ngắtĐã sao chép vào khay nhớ tạm. Sao chép Nếu bạn cũng muốn tìm hiểu thêm về các phương thức mảng khác, chẳng hạn như 2, 3 hoặc 4, hãy đảm bảo bạn xem bài viết của chúng tôi bên dướiSức mạnh của các hàm mảng bậc caotìm, một số, lập bản đồ, giảm, mọi, lọcTìm hiểu mọi thứ bạn cần biết về các phương thức mảng bậc cao và cách bạn có thể sử dụng chúng với toàn bộ tiềm năng của chúngBreak có dừng forEach không?break kết thúc thực thi cấu trúc for , foreach , while , do-while hoặc switch hiện tại .
Bạn có thể thoát ra khỏi forEach không?Bạn không thể thoát Vòng lặp forEach , Vì vậy, hãy sử dụng every() để thay thế
. Vì vậy, nếu bạn chèn một câu lệnh break, nó sẽ trả về SyntaxError. đặt số = [2, 4, 5, 8, 12] đặt số lẻ = 5; .
Làm cách nào để ngắt vòng lặp forEach trong JavaScript?Câu trả lời ngắn gọn là. bạn không thể . Không thể ngắt vòng lặp forEach trong JavaScript. Tuy nhiên, có một số cách giải quyết và cũng có những lựa chọn thay thế.
Làm cách nào để ngăn chặn forEach?Sử dụng every() thay vì forEach()
. // In "1, 2, 3" [1, 2, 3, 4, 5]. every(v => { if (v > 3) { return false; } bảng điều khiển. nhật ký (v); . |