美文网首页
不改变值替换对象key的方法

不改变值替换对象key的方法

作者: 记录学习生活 | 来源:发表于2020-12-14 13:34 被阅读0次

第一种

const arr = [
        {
            "name": "key1",
            "value": "value1",
        },
        {
            "name": "key2",
            "value": "value2",
        }
]
converKey(arr, keyMap) {
    let tempString= JSON.stringify(arr)
        for( let key in keyMap) {
            let reg= `/"${key}":/g`
                tempString= tempString.replace(eval(reg), '"' + keyMap[key] + '":')
            }
                return JSON.parse(tempString)
     },
converKey(data, {'name': 'newName'}) //注意keyMap的格式

第二种

const arr = [
        {
            "name": "key1",
            "value": "value1",
        },
        {
            "name": "key2",
            "value": "value2",
        }
]
const keyMap = { //旧key到新key的映射
    name: 'newName'
}
for (let i = 0; i < arr.length; i++) {
    let obj = arr[i]
    for (let key in obj) {
        var newKey = keyMap[key]
        if (newKey) {
            obj[newKey] = obj[key]
            delete obj[key]
        }
    }
}

相关文章

网友评论

      本文标题:不改变值替换对象key的方法

      本文链接:https://www.haomeiwen.com/subject/mrjvgktx.html