美文网首页
工作问题总结

工作问题总结

作者: 王三准wsz | 来源:发表于2021-01-22 16:22 被阅读0次

    1、对象赋值问题(对象赋值影响原对象)
    直接用=的方式把一个对象赋值给另一个对象,会导致修改新对象时,原对象也发生变化

        var obj1 = {'age': '10','friends':{'Aymi':'12','Jack':'9'}};
        var obj2 = obj1;   //obj1赋值给新对象obj2
        obj2.age = '20';   //修改obj2的age值
        console.log(obj1.age); //'20'   //obj1中的age值也改变了
    

    问题原因:JavaScript 中对象的赋值是默认引用赋值的(两个对象指向相同的内存地址),所以修改另一个对象时,即修改了内存地址里的对象,其他关联对象也会改变
    推荐使用这种方法

    obj2=JSON.parse(JSON.stringify(obj1))
    

    参考:https://www.cnblogs.com/huihuihero/p/11981665.html
    详细参考:https://www.cnblogs.com/c2016c/articles/9328725.html

    相关文章

      网友评论

          本文标题:工作问题总结

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