Monday, January 20, 2025

[Javascript] – Phần 33: JavaScript For In

-

Vòng lặp for in trong JavaScript được sử dụng để lặp qua các thuộc tính của một đối tượng. Dưới đây là cú pháp của vòng lặp for in:

for (key in object) {
  // Khối code sẽ được thực hiện
}

Ví dụ:

const person = {fname: "John", lname: "Doe", age: 25};
let text = "";

for (let x in person) {
  text += person[x];
}

Trong ví dụ này, vòng lặp for in lặp qua các thuộc tính của đối tượng person (là fname, lname, và age). Mỗi lần lặp, biến x sẽ chứa tên thuộc tính và chúng ta sử dụng person[x] để truy cập giá trị tương ứng của thuộc tính đó.

Vòng lặp for in cũng có thể được sử dụng để lặp qua các phần tử của một mảng. Tuy nhiên, lưu ý rằng khi sử dụng for in với mảng, thứ tự của các chỉ số có thể không được bảo đảm theo thứ tự mong đợi. Do đó, nếu thứ tự là quan trọng, nên sử dụng vòng lặp for, for of hoặc Array.forEach() thay vì for in.

Dưới đây là ví dụ khác mô tả cách sử dụng vòng lặp for in để lặp qua các phần tử của một mảng:

const numbers = [45, 4, 9, 16, 25];
let txt = "";

for (let x in numbers) {
  txt += numbers[x];
}

console.log(txt);

Tuy nhiên, như đã lưu ý, khi sử dụng for in với mảng, thứ tự của các chỉ số (x trong trường hợp này) có thể không theo thứ tự mong đợi. Do đó, việc này có thể gây nhầm lẫn nếu bạn phụ thuộc vào thứ tự của các phần tử.

Để đảm bảo thứ tự, bạn có thể sử dụng vòng lặp for, for of hoặc phương thức Array.forEach() như sau:

Sử dụng vòng lặp for:

const numbers = [45, 4, 9, 16, 25];
let txt = "";

for (let i = 0; i < numbers.length; i++) {
  txt += numbers[i];
}

console.log(txt);

Sử dụng vòng lặp for of:

const numbers = [45, 4, 9, 16, 25];
let txt = "";

for (let number of numbers) {
  txt += number;
}

console.log(txt);

Sử dụng phương thức Array.forEach():

const numbers = [45, 4, 9, 16, 25];
let txt = "";

numbers.forEach(function (number) {
  txt += number;
});

console.log(txt);

Cả ba cách này đều đảm bảo thứ tự của các phần tử khi lặp qua mảng.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

4,956FansLike
256FollowersFollow
223SubscribersSubscribe
spot_img

Related Stories