Làm quen với đối tượng Array trong Javascript (phần 2)

Ở bài viết trước đã đề cập vài phương thức bạn nào muốn xem lại thì nhấp vào đây nha.

Map()

Cú pháp: arr.map() được áp dụng một hàm vào mỗi phần tử của mảng, từ đó tạo ra mảng mới.

Ví dụ:

Từ ví dụ trên, có thể nhìn ra map() như là một vòng for thực thụ. Với hàm .length, nó đã thực hiện tính ra độ dài của từng phần tử trong mảng.

Reverse

Cú pháp: arr.reverse() : như chính tên của mình, phương thức này dùng để đảo ngược các phần tử trong mảng. Phần tử đầu sẽ bị đảo xuống cuối và phần tử cuối sẽ được đảo lên đầu.

Reduce/ReduceRight

Cú pháp: arr.reduce(function(accumulator, item, index, array))

  • accumulator: kết quả của lần gọi hàm trước, bằng với lần đầu tiên (nếu có)
  • item: phần tử hiện tại của mảng
  • index: vị trí hiện tại của mảng

Hàm này áp dụng lần lượt cho các phần tử trong mảng và kết quả của lần gọi hàm trước truyền cho lần tiếp theo. Nhìn hình minh họa dưới đây cho dễ hình dung.

Đối số ban đầu là 0, phần tử thứ 2 sẽ cộng với kết quả cái ban đầu, cứ tích lũy lưu trữ dần kết quả, cuối cùng tổng hợp thành 0+1+2+3 (phần tử hiện tại) = 6. vậy nên kết quả cuối cùng là 6.

Sort

Cú pháp: arr.sort(). Hàm sort ở đây sắp xếp theo kiểu so sánh, thay đổi thứ tự phần tử của mảng, sắp xếp xong trả về mảng, kết quả thường bị bỏ qua vì mảng đã thay đổi.

Ví dụ:

Ở trên đề cập số lớn sẽ được sắp trước vậy tại sao ở đây 1 vẫn nằm vị trí đầu. Sự thật là vị trí bắt đầu sort lại nằm ở 9 và 52, vậy nên khi 9 so với 52 đã bị lui về phía sau.

Split/join

Cú pháp: arr.split() tách một chuỗi thành một mảng bởi dấu định sẵn (,).

tách chuỗi thành mảng bởi dấu ,

Cú pháp: arr.join() tạo một chuỗi từ mảng ban đầu và liên kết với nhau bằng kí tự mình muốn.

ghép chuỗi bởi kí tự mình muốn ( + )

Tổng kết

Sau đây mình sẽ tổng kết lại phương thức Array của hai bài viết:

Thêm, xóa phần tử

  • push(item): thêm vào cuối mảng
  • pop(): xóa ở cuối mảng
  • shift(): xóa ở đầu mảng
  • unshift(item): thêm vào đầu mảng
  • splice(index(deleteCount, item1,…): xóa hay chèn phần tử mảng
  • slice(start, end): trích xuất phần tử mảng
  • concat(item): nối hai hay nhiều mảng
  • indexOf/lastIndexOf(item, index): tìm từ vị trí bắt đầu đến kết thúc
  • includes(value): trả về giá trị true hay false
  • find/findIndex(): tìm kiếm đối tượng, vị trí
  • filter(): xử lý lọc phần tử và chấp nhận phần tử mảng

Lặp các phần tử

forEach(func)

Biến đổi mảng

  • map(func): tạo mảng mới từ kết quả gọi hàm trước
  • reverse(): đảo phần tử trong mảng
  • reduce(): tính toán giá trị trong mảng bằng cách gọi hàm và truyền giá trị trung gian
  • sort(func): sắp xếp phần tử tại chỗ trong mảng xong trả về vị trí
  • split/join(): tách chuỗi hoặc nối chuỗi

Hi vọng bài viết này sẽ giúp mọi người biết thêm các đối tượng mảng, cảm ơn mọi người theo dõi đến đây.

Huyền Nguyễn

PLT SOLUTIONS

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *