Một vài tips khi sử dụng array trong JavaScript không phải ai cũng biết

Tram Ho

1, Xóa phần tử trùng nhau trong mảng

Ở cách số 2 chắc hẳn nhiều bạn sẽ thắc mắc đoạn [...new Set(fruits)] cái (…) trong đoạn code này là cái quái quỷ gì vậy. Thật ra nó chỉ là một chức năng khá mới trong ES6 được gọi là Spread Operator, nếu bạn nào từng tiếp xúc với Ruby sẽ thấy nó khá giống với Splat Operator. Spread Operator cho phép chuyển đổi một chuỗi thành nhiều argument (trong trường hợp gọi với hàm) hoặc thành nhiều phần tử (cho array).

Ví dụ trực quan cho các bạn dễ hiểu.

Ngoài ra Spread Operator này cũng có vài tác dụng khá hay các bạn tự tìm hiểu thêm nhé.

2, Thay thế các giá trị trong mảng

Phương thức splice () thêm / xóa các items vào một mảng và trả về items đã xóa.
splice(start, value to remove, valueToAdd)

3, Vòng lặp trong mảng

Ví dụ có 1 mảng sau:

Giờ muốn lấy ra 1 mảng chứa tên, bình thường nhiều bạn sẽ làm như cách thông thường đó là dùng vòng lặp for như sau.

Có 1 cách sử dụng nhanh hơn đó là sử dụng .map().

Nhanh hơn đúng không các bạn.

Hàm map() nhận vào 3 tham số (theo thứ tự):

  • Phần tử hiện tại của mảng.
  • Chỉ số của phần tử hiện tại trong mảng.
  • Mảng ban đầu.

Còn một cách tương tự như method .map() đó là method .from().

4, Trả về mảng rỗng

Bạn có một mảng đầy đủ các elements nhưng bạn cần làm “sạch” nó cho bất kỳ mục đích nào và bạn không muốn xóa từng mục một?
Quá easy

5, Chuyển array thành object

Nếu bạn muốn sử dụng một object thay vì kiểu mảng cho trước đơn giản bạn có thể sử dụng Spread Operator mình vừa giới thiệu ở trên.

Không thì bạn có thể sử dụng như sau:

Đây đều là 2 cách sử dụng cú pháp trong ES6.

6, Tạo một mảng các giá trị giống nhau

Ở đây mình giới thiệu với các bạn một method mà mình cũng mới biết đó là method .fill()

7, Gộp mảng

Có rất nhiều cách để gộp mảng lại với nhau như sử dụng vòng for rồi push thêm phần thử, hay sử dụng hàm .concat() đều được.
Nhưng có một cách mà mình đã nói qua ở trên đó là sử dụng Spread Operator.

8, Tìm các phần tử trùng nhau trong 2 mảng cho trước.

Ở đây có sử dụng method .filter() hiểu nôm na là bạn sẽ được trả về một mảng các giá trị theo điều kiện nào đó. Và method .includes() đơn giản chỉ kiểm tra xem giá trị của 1 phần tử nào đó có nằm trong mảng hay không.

9, Loại bỏ các giá trị đó theo điều kiện

Đơn giản bạn chỉ cần sử dụng hàm .filter() như mình đã giải thích ở trên.

10, Lấy random 1 phần tử trong mảng

11, Đảo ngược mảng

Khi muốn đảo ngược một mảng, nếu là một người mới bắt đầu học lập trình bạn sẽ sử dụng vòng for để rồi duyệt từ phần tử cuối đến phần tử đầu tiên. Nhưng để đơn giản hơn javascript đã sinh ra một method ngắn gọn là reverse().

12, Tìm vị trí xuất hiện cuối cùng của một phần tử trong mảng.

Chỉ cần sử dụng lastIndexOf() là xong.

13, Tính tổng value trong mảng

Với một cách dễ nhất đó là sử dụng vòng for. Ví dụ

Đây là sử dụng thông thường, còn một cách nữa đó là sử dụng method .reduce(). Bạn có thể sử dụng hàm là từ những giá trị có sẵn trong mảng tạo ra một giá trị mới hoàn toàn. Như ở đây là bài tính tổng

.reduce() có thể nhận nhiều tham số truyền vào.

  • Tham số thứ nhất là giá trị khởi tạo, thường thường ta sẽ sét giá trị này ở cuối hàm
  • Tham số thứ hai là phần tử hiện tại trong mảng

Kết luận

Trên đây là vài cách để các bạn có thể dễ dàng sử dụng array trong javascript.

Tài liệu tham khảo tại đây

Chia sẻ bài viết ngay

Nguồn bài viết : Viblo