美文网首页
vue 对象拷贝

vue 对象拷贝

作者: 丰起云啸 | 来源:发表于2018-09-26 14:12 被阅读0次

    先说几种情况的对象拷贝

    1.“=” 赋值方法

    let a={b:’2‘,c:‘3’}

    let e=a

    e.b='5'

    结果

    a.b="5"

    改变了原来的值

    2.Object.assign({},val)  对象拷贝

    let a={name:"张三"}

    let b=Object.assign({},a)

     b.name="wangwu"

    //a.name="张三"

    但是当

    let a = {name:{firstName:'wang',lastName:'er'}}

    let b=Object.assign({},a)

    b.name.firstName="wangwu"

    a.name.firstName="wangwu"   //又回来了

    这是为什么呢?

    这是因为object.assign是浅拷贝当,b.name是个栈 对象的引用 b.name.firstName   a.name也是栈对象的引用 一改都改

    相关文章

      网友评论

          本文标题:vue 对象拷贝

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