How to filter an array in javascript?

前端 未结 7 1674
清酒与你
清酒与你 2020-11-28 16:38

This is an array,

total = [\"10%\", 1000, \"5%\", 2000] . how can i filter these into two array like, percentage = [\"10%\",\"5%\"] and absolute = [100

7条回答
  •  误落风尘
    2020-11-28 17:19

    You can use Array#reduce to split the array:

    const total = ["10%", 1000, "5%", 2000];
    
    const { absolute, percentage } = total.reduce((arrs, item) => {
      const key = typeof item === 'number' ? 'absolute' : 'percentage';
      
      arrs[key].push(item);
      
      return arrs;
    }, { percentage: [], absolute: [] });
    
    console.log(absolute);
    
    console.log(percentage);

提交回复
热议问题