🖥️FE🖥️/📗Vue📗

Shallow Copy Deep Copy

들눈 2023. 11. 26. 11:32

상황이 이렇다

  data () {
    return {
      page: momentInfo ,

 

  props:{
    momentInfo:{
      type:Object
    },

라면 page와 momentInfo가 동일한 주소를 공유하므로 momentInfo의 값을 수정하는 것은  page의 값을 바꾸는 것과 같다.
만약 의도가 값만 가져온 독립적인 상태를 유지하려면 Deep Copy를 해야한다.
GPT에게 물어봤는데

  data () {
    return {
      page: {...momentInfo },

이러면 된다는대 나는 의도한대로 되지않았다.

  data () {
    return {
      page: JSON.parse(JSON.stringify(this.momentInfo)) ,

이러면 처음 받을때 값을 받으며 momentInfo와 page는 서로 무관한 존재가 된다.
끝!