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

Đẩy các đối tượng sai xuống dưới cùng trong JavaScript

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

const array = [
   {key: 'a', value: false},
   {key: 'a', value: 100},
   {key: 'a', value: null},
   {key: 'a', value: 23}
];

Chúng tôi bắt buộc phải viết một hàm JavaScript nhận trong một mảng như vậy và đặt tất cả các theobject có giá trị sai cho thuộc tính "value" xuống dưới cùng và sắp xếp tất cả các đối tượng khác theo thứ tự giảm dần theo thuộc tính "value".

Do đó, hãy viết mã cho chức năng này -

Ví dụ

Mã cho điều này sẽ là -

const arr = [
   {key: 'a', value: false},
   {key: 'a', value: 100},
   {key: 'a', value: null},
   {key: 'a', value: 23}
];
const isValFalsy = (obj) => !obj.value && typeof obj.value !== 'number';
const sortFalsy = arr => {
   arr.sort((a, b) => {
      if(isValFalsy(a) && isValFalsy(b)){
         return 0;
      }
      if(isValFalsy(a)){
         return 1;
      };
      if(isValFalsy(b)){
         return -1;
      };
      return b.value - a.value;
   });
};
sortFalsy(arr);
console.log(arr);

Đầu ra

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

[
   { key: 'a', value: 100 },
   { key: 'a', value: 23 },
   { key: 'a', value: false },
   { key: 'a', value: null }
]