js修改对象的属性的两种方法(十分好用)

145 阅读1分钟

在我们开发的过程中,后端返回的字段可能和我们组件复用的字段名字不同,这时候为了更方便的开发,我们采用修改后端返回的对象字段来匹配组件中的对象字段

第一种正则匹配替换

<script>
    var obj = {
        id: 1,
        name: '程序猿',
        age: 16,
    }
    var objReplace = JSON.stringify(obj) //首先给对象转换成字符串
    console.log(objReplace)  //{"id":1,"name":"程序猿","age":16}

    var newObjString = objReplace.replace(/id/g, 'newId') //使用正则匹配需要替换的字段名字,替换成需要的字段名
    console.log(newObj) //{"newId":1,"name":"程序猿","age":16}

    var newObj = JSON.parse(newObjString) //最后转换成对象就ok啦
    console.log(newObj)

    //最后把这几个过程合起来
    var newObjOne = JSON.parse(JSON.stringify(obj).replace(/id/g, 'newId'))
    console.log(newObj)

</script>

第二种使用for循环遍历

<script>
    //for循环就是给对象添加新的属性名
    var obj = {
        id: 1,
        name: '程序猿',
        age: 16,
    }
    for(i in obj){
        obj.newId = obj.id //添加修改的字段
    }
    console.log(obj)
</script>

个人推荐正则替换哦,亲们