前端处置惩罚接口数据经常使用要领

一样平常开辟中,后端给的数据偶然不能直接运用,须要经由一些处置惩罚。这里总结一些经常使用的要领,延续更新。

数组

去掉数组中undefind

const data = [1, 2, undefined];
const pureData = data.filter(element => element !== undefined);

去掉数组中undefind、”、null

const bad = [undefined, '', null];
const data = [1, 2, undefined, null, ''];
const pureData = data.filter(element => !bad.includes(element)); // [1, 2];
// 最简朴的写法
const pureData = data.filter(element => element); // [1, 2];

数组分类(数组构造变成map构造)

const animals = [
    {
        "value": 4238,
        "name": "dog"
    },
    {
        "value": 35203,
        "name": "cat"
    },
    {
        "value": 10217,
        "name": "dog"
    },
    {
        "value": 3237,
        "name": "cat"
    }
]

const pureData = animals.reduce(function(sum, curValue) {
    const value = { ...curValue };
    sum[curValue.name] = sum[curValue.name] ? sum[curValue.name].concat(value) : [value];
    return sum;
}, {});
console.log(pureData)
/*
{
    dog:
        [{ value: 4238, name: 'dog' }, { value: 10217, name: 'dog' }],
    cat:
        [{ value: 35203, name: 'cat' }, { value: 3237, name: 'cat' }]
}
*/

对象

部份复制对象

const data = {name: '伍六七', age: 12, sex: 'male', height: 188};
const {name, age, sex} = data;
const partObj = {name, age, sex}; // {name: "伍六七", age: 12, sex: "male"}
    原文作者:seven
    原文地址: https://segmentfault.com/a/1190000019215748
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞