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

Nhóm các giá trị trên cùng một thuộc tính - JavaScript

Giả sử chúng ta có một mảng như thế này -

 const arr =[{unit:35, brand:'CENTURY'}, {unit:35, brand:'BADGER'}, {unit:25, brand:'CENTURY'}, {unit:15, brand:'CENTURY'}, {unit:25, brand:'XEGAR'}]; 

Chúng tôi bắt buộc phải viết một hàm nhóm tất cả các thuộc tính nhãn hiệu của các đối tượng có thuộc tính đơn vị giống nhau.

Giống như đối với mảng ở trên, mảng mới phải là -

 const output =[{unit:35, brand:'CENTURY, BADGER'}, {unit:25, brand:'CENTURY, XEGAR'}, {unit:15, brand:'CENTURY'}];  

Chúng ta sẽ lặp qua mảng, tìm kiếm đối tượng có giá trị đơn vị bằng cách sử dụng một hàm trợ giúp. Nếu nó tồn tại, chúng tôi nối giá trị thương hiệu, nếu không, chúng tôi tạo một đối tượng mới.

Ví dụ

Sau đây là mã -

 const arr =[{unit:35, brand:'CENTURY'}, {unit:35, brand:'BADGER'}, {unit:25, brand:'CENTURY'}, {unit:15, brand:'CENTURY'}, {unit:25, brand:'XEGAR'}]; const indexOf =function (unit) {return this.findIndex (el => el.unit ===unit)}; Array.prototype.indexOf =indexOf; const groupArray =arr => {const res =[]; for (let i =0; i  

Đầu ra

Điều này sẽ tạo ra kết quả sau trong bảng điều khiển -

 [{unit:35, brand:'CENTURY, BADGER'}, {unit:25, brand:'CENTURY, XEGAR'}, {unit:15, brand:'CENTURY'}]