Computer >> Máy Tính >  >> Lập trình >> Javascript

Đếm các phần tử duy nhất trong mảng mà không cần sắp xếp JavaScript

Giả sử, chúng ta có một mảng các ký tự chứa một số giá trị trùng lặp -

 const arr =["Cat", "Dog", "Cat", "Elephant", "Dog", "Grapes", "Dog", "Lion", "Grapes", "Lion"];  

Chúng ta được yêu cầu viết một hàm trả về số lượng các phần tử duy nhất trong mảng. Sẽ sử dụng Array.prototype.reduce () và Array.prototype.lastIndexOf () để thực hiện việc này -

Ví dụ

 const arr =["Cat", "Dog", "Cat", "Elephant", "Dog", "Grapes", "Dog", "Lion", "Grapes", "Lion"]; const countUnique =arr => {return arr.reduce ((acc, val, ind, array) => {if (array.lastIndexOf (val) ===ind) {return ++ acc;}; return acc;}, 0);}; console.log (countUnique (arr)); 

Đầu ra

Đầu ra trong bảng điều khiển sẽ là -

 5