我从服务器获取JSON值,并且效果很好。但是我想自定义我的JSON值。我有两个问题:

首先,当我获得区域值时,就像["USA"],["Mexico"],["Canada"]一样得到它。有没有一种方法可以忽略双引号/括号,而只获取像USA, Mexico, Canada这样的字符串值?

其次,当我获得regDate值时,我会像2018-10-31T07:53:12.000Z一样获得整个数据,我可以忽略某些值并像2018-10-31 07:53那样获得它吗?

{
  "result": "ok",
  "data": [
      {
        "idx": 1,
        "region": "[\"USA \", \"Mexico \", \"Canada \"]",
        "regDate": "2018-10-31T07:53:12.000Z"
      }
   ]
}

最佳答案

您的region数据似乎已被双重编码。在javascript中,您需要对其进行解码,例如

const response = {
  "result": "ok",
  "data": [
      {
        "idx": 1,
        "region": "[\"USA \", \"Mexico \", \"Canada \"]",
        "regDate": "2018-10-31T07:53:12.000Z"
      }
   ]
};

const regions = JSON.parse(response.data[0].region);

对于时间格式,可以使用内置的Java脚本Date类型,例如。
const regDate = new Date(response.data[0].regDate);
const regDatestr =
  regDate.getUTCFullYear() + '-' +
  regDate.getUTCMonth() + '-' +
  regDate.getDate() + ' ' +
  regDate.getUTCHours() + ':' +
  regDate.getUTCMinutes()
;

如果您需要比内置功能更多的功能,我建议date-fns

07-24 18:34