首页 > 解决方案 > 我如何用 json.parse 解决这个问题?

问题描述

我有一个解析方法的问题。我调用了一个 WebService,并在 Angular 中发出了一个 post 请求。返回的对象是正确的,但是当我执行此操作时JSON.parse()效果不佳,因为正如您在屏幕截图中看到的那样,当我解析结果时,某些值消失了。为什么会发生?我该如何解决?

在我的通话中,我这样做:

 this.ts.getGiorni(user).subscribe((res => {
  console.log(res);
  this.timeSheet = JSON.parse(JSON.stringify(res));
  console.log(this.timeSheet);

..更多代码

结果是这样的: https ://imgur.com/a/aqf93Qq

编辑 :

你为什么要对它进行字符串化然后再次解析它?因为我有这个回复的副本,如果我有:this.timesheet = res; 而 this.copyOfTimesheet = res; 当我修改副本时,主时间表也将被修改,因为它们具有相同的内存分配

标签: angularangular7

解决方案


如果您的 res 不包含嵌套对象(如屏幕截图所示),您可以使用Object.assign().

this.timeSheet = Object.assign({}, res);


推荐阅读