1.For Loop
-Với vòng lặp for ta sẽ khởi tạo biến đếm, kiểm tra điều kiện và tăng hoặc giảm biến được thực hiện trên cùng một dòng, do đó khá dễ dàng cho những người mới tiếp cận để debug và cũng giảm khả năng sinh ra lỗi.
-Cú pháp:
for ([initialization];[condition];[final-expression]){
Block of code
}
2.While loop
-Bên cạnh for thì while cũng là một trong những vòng lặp tương đối basic. Câu lệnh while tạo ra một vòng lặp thực thi một khối lệnh (block of code) cho đến khi điều kiện vẫn đúng.
-Cú pháp :
while (condition) {
Block of code
}
3.Do While
-**do-while** về cơ bản khá giống với **while**, chúng chỉ khác nhau duy nhất. Đối với **Do While** dù điều kiện lặp như thế nào thì đoạn code vẫn được chạy ít nhất 1 lần còn nếu điều kiện thỏa mãn thì sẽ tương tự như **While** : tạo ra thêm vòng lặp
-Cú pháp :
do {
Block of code
}
while (condition);
4.forEach()
-Hàm này thì có vẻ đã không quá còn basic như những hàm phía trên nữa. forEach sẽ lặp lại từng phần tử trong mảng theo thứ tự index và thực thi function được truyền vào. Lưu ý rằng forEach sẽ không thực thi function đầu vào cho các phần tử không có giá trị.
-Cú pháp:
arrayName.forEach(function(currentValue, index, array){
function body
})
+currentValue: Giá trị đang được vòng lặp xử lý.
+index: Chí số của giá trị (currentValue) trong mảng.
+array: toàn bộ array đang gọi đến forEach.
*Lưu ý rằng bạn không nhất thiết phải truyền toàn bộ 3 đối số vào, chỉ truyền vào những đối số cần thiết.
5.map
-Tiếp tục là một hàm sẽ giúp bạn loop các phần tử của một Array. Tuy nhiên **map** sẽ tạo ra một mảng mới chứ không phải thực thi với mảng gọi đến nó như **forEach**.
-Cú pháp :
let newArray= oldArray.map(function (currentValue, index, array){
//Return element for the newArray
});
6.For….in
-Vòng lặp này có đôi chút khác biệt với các hàm phía trên, For…in mục đích chủ yếu được dùng để loop trong một object chứ không phải array . Số lượng vòng lặp sẽ tương ứng với số lượng thuộc tính của object.
-Mỗi array cũng là một object đặc biệt, do đó ta vẫn có thể sử đụng for…in cho array , tuy nhiên key sẽ tương ứng với giá trị index của từng phần tử.
-Cú pháp :
for (variableName in object) {
Block of code
}
7.For…of
-Vòng lắp được ra mắt trong phiên bản ES6. Hàm này có thể sử dụng để duyệt phần lớn các đối tượng từ Array, String, Map, WeakMap, Set ,…
-Cú pháp :
for (variable of iterable) {
Block of code
}