Chào các bạn, JavaScript cung cấp rất nhiều phương thức để làm việc với mảng (array), giúp lập trình viên xử lý dữ liệu một cách hiệu quả và linh hoạt hơn. Trong bài viết này, chúng ta sẽ tìm hiểu các phương thức phổ biến nhất trong JavaScript:

1. push()

Thêm một hoặc nhiều phần tử vào cuối mảng.

js
let fruits = ["apple", "banana"];
fruits.push("orange");
console.log(fruits); // ["apple", "banana", "orange"]

2. pop()

Xóa phần tử cuối cùng khỏi mảng và trả về phần tử đã xóa.

js
let fruits = ["apple", "banana", "orange"];
let lastFruit = fruits.pop();
console.log(lastFruit); // "orange"
console.log(fruits); // ["apple", "banana"]

3. shift()

Xóa phần tử đầu tiên khỏi mảng và trả về phần tử đã xóa.

js
let fruits = ["apple", "banana", "orange"];
let firstFruit = fruits.shift();
console.log(firstFruit); // "apple"
console.log(fruits); // ["banana", "orange"]

4. unshift()

Thêm một hoặc nhiều phần tử vào đầu mảng.

js
let fruits = ["banana", "orange"];
fruits.unshift("apple");
console.log(fruits); // ["apple", "banana", "orange"]

5. splice()

Thêm, xóa hoặc thay thế các phần tử trong mảng.

js
let fruits = ["apple", "banana", "orange"];
fruits.splice(1, 1, "kiwi"); // Xóa 1 phần tử tại vị trí 1 và thêm "kiwi"
console.log(fruits); // ["apple", "kiwi", "orange"]

6. map()

Tạo một mảng mới bằng cách áp dụng một hàm cho từng phần tử của mảng.

js
let numbers = [1, 2, 3];
let squared = numbers.map(num => num * num);
console.log(squared); // [1, 4, 9]

7. filter()

Tạo một mảng mới chỉ chứa các phần tử thỏa mãn điều kiện.

js
let numbers = [1, 2, 3, 4, 5];
let evens = numbers.filter(num => num % 2 === 0);
console.log(evens); // [2, 4]

8. reduce()

Tích lũy các phần tử của mảng thành một giá trị duy nhất.

js
let numbers = [1, 2, 3, 4];
let sum = numbers.reduce((total, num) => total + num, 0);
console.log(sum); // 10

9. forEach()

Thực thi một hàm cho từng phần tử trong mảng.

js
let fruits = ["apple", "banana", "orange"];
fruits.forEach(fruit => console.log(fruit));
// "apple"
// "banana"
// "orange"

10. find()

Trả về phần tử đầu tiên thỏa mãn điều kiện.

js
let numbers = [1, 2, 3, 4];
let firstEven = numbers.find(num => num % 2 === 0);
console.log(firstEven); // 2

11. findIndex()

Trả về vị trí của phần tử đầu tiên thỏa mãn điều kiện.

js
let numbers = [1, 2, 3, 4];
let index = numbers.findIndex(num => num % 2 === 0);
console.log(index); // 1

12. includes()

Kiểm tra xem một phần tử có tồn tại trong mảng hay không.

js
let fruits = ["apple", "banana", "orange"];
console.log(fruits.includes("banana")); // true
console.log(fruits.includes("kiwi")); // false

13. sort()

Sắp xếp các phần tử của mảng.

js
let numbers = [3, 1, 4, 1, 5];
numbers.sort((a, b) => a - b); // Sắp xếp tăng dần
console.log(numbers); // [1, 1, 3, 4, 5]

14. slice()

Tạo một mảng con từ mảng gốc mà không thay đổi mảng gốc.

js
let fruits = ["apple", "banana", "orange", "kiwi"];
let citrus = fruits.slice(1, 3); // Lấy từ vị trí 1 đến trước vị trí 3
console.log(citrus); // ["banana", "orange"]

15. concat()

Nối hai hoặc nhiều mảng thành một mảng mới.

js
let array1 = [1, 2];
let array2 = [3, 4];
let combined = array1.concat(array2);
console.log(combined); // [1, 2, 3, 4]

16. reverse()

Đảo ngược thứ tự các phần tử trong mảng.

js
let numbers = [1, 2, 3];
numbers.reverse();
console.log(numbers); // [3, 2, 1]

17. join()

Chuyển đổi mảng thành chuỗi với dấu phân cách tùy chọn.

js
let fruits = ["apple", "banana", "orange"];
let result = fruits.join(", ");
console.log(result); // "apple, banana, orange"

18. every()

Kiểm tra xem tất cả các phần tử có thỏa mãn điều kiện hay không.

js
let numbers = [2, 4, 6];
let allEven = numbers.every(num => num % 2 === 0);
console.log(allEven); // true

19. some()

Kiểm tra xem ít nhất một phần tử có thỏa mãn điều kiện hay không.

js
let numbers = [1, 2, 3];
let hasEven = numbers.some(num => num % 2 === 0);
console.log(hasEven); // true

Kết luận

Các phương thức mảng trong JavaScript mang lại sức mạnh và sự linh hoạt cho việc xử lý dữ liệu. Việc hiểu và sử dụng thành thạo các phương thức này sẽ giúp bạn trở thành một lập trình viên hiệu quả hơn. Đừng quên áp dụng chúng vào các dự án thực tế của bạn!