2

在 vue2 或 js 中,有一个 json 对象,赋值后数据却变了

 2 years ago
source link: https://www.v2ex.com/t/804333
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

V2EX  ›  Vue.js

在 vue2 或 js 中,有一个 json 对象,赋值后数据却变了

  sunorg · 16 小时 13 分钟前 · 999 次点击

请教个问题

在 vue2 中,有一个 json 对象,赋值后数据却变了,哪位高人熟手给指点下啥原因,拜谢!

问题代码
test() {
        const data ='{
    "code":200,
    "message":"获取成功",
    "data":{
        "list":[
            {
                "id":4,
                "parent_id":0,
                "title":"WHWHWHWHWHWHWHWH",
                "xxx_pri":"0.95",
                "xxx_pri":"0.98",
                "state":1
            },
        ],
        "count":"1"
    }
}'
        const d = JSON.parse(data)
        console.log(d.data.list)    //此时 list[0].state=1
       
        this.type_list = d.data.list
        console.log(this.type_list) //此时 list[0].state=0,
      },

如在赋值之前,加入语句,强制 int 转 string 则可以。


 //加入转换
 d.data.list.forEach((element) => {
          element.state = element.state.toString()
 })
 

百思不得其解,哪位给指点一二

第 1 条附言  ·  15 小时 36 分钟前

补充下:

该现象换了另外一台电脑无法重现。
该现象代码,换到其他页面上去,也没问题,特定那个页面。。。

有朋友指出是 object.assign 的问题,但还没理透。哪位朋友给指点指点

这种不确定性让人怀疑。。。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK