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

Tách loại dữ liệu từ mảng thành các nhóm trong JavaScript

Vấn đề

Chúng tôi được yêu cầu viết một hàm JavaScript có một mảng các kiểu dữ liệu hỗn hợp. Hàm của chúng ta sẽ trả về một đối tượng có chứa tên kiểu dữ liệu làm khóa và giá trị của chúng dưới dạng mảng các phần tử của kiểu dữ liệu cụ thể đó có trong mảng.

Ví dụ

Sau đây là mã -

const arr = [1, 'a', [], '4', 5, 34, true, undefined, null];
const groupDataTypes = (arr = []) => {
   const res = {};
   for(let i = 0; i < arr.length; i++){
      const el = arr[i];
      const type = typeof el;
      if(res.hasOwnProperty(type)){
         res[type].push(el);
      }else{
         res[type] = [el];
      };
   };
   return res;
};
console.log(groupDataTypes(arr));

Đầu ra

Sau đây là đầu ra của bảng điều khiển -

{
   number: [ 1, 5, 34 ],
   string: [ 'a', '4' ],
   object: [ [], null ],
   boolean: [ true ],
   undefined: [ undefined ]
}