Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Tìm n giá trị lớn nhất trong object JavaScript

Cho object mô tả chỉ số cầu thủ:

const qualities = { defence: 82, attack: 92, heading: 91, pace: 96, dribbling: 88, tenacity: 97, vision: 91, passing: 95, shooting: 90 };

Viết hàm nhận object và n, trả object n cặp key-value lớn nhất.

Với n=2:

{ tenacity: 97, pace: 96 }

Sắp xếp key theo value giảm dần, lấy n đầu.

Ví dụ

const qualities = { defence: 82, attack: 92, heading: 91, pace: 96, dribbling: 88, tenacity: 97, vision: 91, passing: 95, shooting: 90 }; const pickHighest = (obj, num = 1) => {    const requiredObj = {};    if(num > Object.keys(obj).length){       return false;    };    Object.keys(obj).sort((a, b) => obj[b] - obj[a]).forEach((key, ind) => {       if(ind < num){          requiredObj[key] = obj[key];       }    });    return requiredObj; }; console.log(pickHighest(qualities, 3));

Kết quả

Đầu ra console:

{ tenacity: 97, pace: 96, passing: 95 } { tenacity: 97 } { tenacity: 97, pace: 96, passing: 95, attack: 92, heading: 91 }