js将对象属性作为参数传递

之前写管理系统,后端获取的数据都是微信的数据,要在管理系统显示,性别是sex:1或者2,每次拿过来都还要替换一下才能放到formdata。多页面的话要写很多次for循环,所以打算自己写个函数去调用,但是如果你要取这个数组第i个的某个对象属性你就发现这个属性无法作为参数传递,所以就用到了[]运算符

封装函数

//for循环数据替换.arr=数组,prop=数组第i个的属性名,a对比数据,b替换数据,c=else替换数据,注意-只适用于两种情况的替换,比如性别
export const forif = (arr, prop, a, b, c) => {
    console.log(arr, prop, a, b, c)
    for (var i = 0; i < arr.length; i++) {
        // console.log(arr[i].prp)
        if (arr[i][prop] == a) {
            arr[i][prop] = b
        } else {
            arr[i][prop] = c
        }
    }
    return arr
}

使用方法

that.inviteData = forif(res.data.list, "sex", 0, "女", "男");
原文地址:https://www.cnblogs.com/hurenjie/p/12566896.html