vue打印结果时为proxy对象,如何获取值。json.parse()和json.stringify()的使用和区别

作者: adm 分类: 前端 发布时间: 2023-12-02

碰到了个问题,打印值时,打印出来的都是Proxy对象,取值有点麻烦。
console.log(this.datas)

一、下面是解决方法

    async created() {
        console.log(this.datas)  // 打印结果是一个Proxy对象
        
        console.log(JSON.parse(JSON.stringify(this.datas))); // 序列化后可以取值
        
        let datas=JSON.parse(JSON.stringify(this.datas));
        this.visible=datas.visible;
    }

 

序列化后即可取值:JSON.parse(JSON.stringify(val))
**
打印结果:
在这里插入图片描述
二、json.stringify()与json.parse()的区别

JSON.stringify()——将 JavaScript 对象转换为 JSON 字符串,

JSON.parse()——将JSON字符串转为一个对象。

简单点说,它们的作用是相对的,

我用JSON.stringify()将对象a变成了字符串c,那么我就可以用JSON.parse()将字符串c还原成对象a。

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!