首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何更改json响应中的数据

如何更改json响应中的数据
EN

Stack Overflow用户
提问于 2019-09-17 23:18:47
回答 3查看 820关注 0票数 2

我得到了一个包含如下数据的jsonResponse:

代码语言:javascript
复制
[ 
   { 
      "date":"2019-02-15",
      "value":"5456"
   },
   { 
      "date":"2019-02-15",
      "value":"5456"
   },
   { 
      "date":"2019-02-15",
      "value":"5456"
   },
   { 
      "date":"2019-02-15",
      "value":"-5456"
   }
]

我需要的是将日期中的分隔符从“-”更改为“/”。我需要这样的日期: 2019/03/14

我试着像这样改变它们:

代码语言:javascript
复制
json.replace(/-/g, "/"); 

它是有效的,但有一个问题。如果由于某种原因,值数据为负-524。这个负数也会改变。

有没有办法在不影响其他数据的情况下更改分隔符?

我需要保留jsonResponse,但更改了分隔符。

EN

回答 3

Stack Overflow用户

发布于 2019-09-17 23:21:35

您必须使用Array.prototype.map遍历数组并更改date

代码语言:javascript
复制
const response = [
  {
    date: "2019-02-15",
    value: "5456"
  },
  {
    date: "2019-02-15",
    value: "5456"
  },
  {
    date: "2019-02-15",
    value: "5456"
  },
  {
    date: "2019-02-15",
    value: "-5456"
  }
];

const result = response.map(obj => ({ ...obj, date: obj.date.replace(/-/g, "/") }));

console.log(result);

票数 2
EN

Stack Overflow用户

发布于 2019-09-17 23:21:24

  1. 使用Array.prototype.map遍历数组中的对象。通过调用Array.prtotype.join("/")

  • 通过调用date来格式化date属性,以使用String.prototype.split("-")date字符串拆分为数组。使用< - >d11联接数组

代码语言:javascript
复制
const data = [ 
   { 
      "date":"2019-02-15",
      "value":"5456"
   },
   { 
      "date":"2019-02-15",
      "value":"5456"
   },
   { 
      "date":"2019-02-15",
      "value":"5456"
   },
   { 
      "date":"2019-02-15",
      "value":"-5456"
   }
];

//This function does not modify the original object or the array
function formatDate(){
  return data.map(o => ({...o, date: o.date.split("-").join("/")}));
}
console.log(formatDate(data));

票数 1
EN

Stack Overflow用户

发布于 2019-09-17 23:27:35

您可以尝试使用map

代码语言:javascript
复制
let response = json.map(doc => doc.date.replace(/-/g, "/"))

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57977378

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档