登录
首页 >  文章 >  前端

如何用 JavaScript 替换 JSON 对象数组中特定值的“AssessingStatus”?

时间:2024-11-23 14:04:04 293浏览 收藏

欢迎各位小伙伴来到golang学习网,相聚于此都是缘哈哈哈!今天我给大家带来《如何用 JavaScript 替换 JSON 对象数组中特定值的“AssessingStatus”?》,这篇文章主要讲到等等知识,如果你对文章相关的知识非常感兴趣或者正在自学,都可以关注我,我会持续更新相关文章!当然,有什么建议也欢迎在评论留言提出!一起学习!

如何用 JavaScript 替换 JSON 对象数组中特定值的“AssessingStatus”?

如何用 javascript 替换对象的特定值?

考虑以下 json 对象,其中包含具有不同“assessingstatus”值的对象数组:

{
  "assessingofficer": [
    {
      "assessingofficername": "卡特琳娜",
      "assessingstatus": 1,
      "assessingofficertype": 1,
      "datatime": "2024-04-09 17:12:04",
      "remarks": "我们在一起",
      "username": "卡特琳娜"
    },
    {
      "datatime": "2024-04-09 17:07:17",
      "remarks": "222222222222",
      "username": "卡特琳娜",
      "assessingofficername": "卡特琳娜",
      "assessingstatus": 2,
      "assessingofficertype": 2
    },
    {
      "datatime": "2024-04-09 17:07:33",
      "remarks": "22222222222222",
      "username": "卡特琳娜",
      "assessingofficername": "卡特琳娜",
      "assessingstatus": 2,
      "assessingofficertype": 2
    }
  ]
}

为了将对象中所有“assessingstatus”值替换为红色:

  1. 提取“assessingstatus”值数组:

    • 使用 map 方法创建 assessingstatus 值数组。
  2. 创建深拷贝:

    • 使用 json.parse(json.stringify()) 创建一个原始数组的深拷贝。
  3. 替换值:

    • 循环深拷贝数组,并按以下规则替换值:

      • 如果当前值是 1,则将其替换为 3(红色)。
      • 如果当前值是 2,并且前一个值是 1,则将其替换为 1(绿色)。
      • 否则,将其保持不变。
  4. 更新原始数组:

    • 将修改后的深拷贝数组替换为原始数组。

示例 javascript 代码:

const assessingOfficer = [
  {
    AssessingStatus: 2,
  },
  {
    AssessingStatus: 2,
  },
  {
    AssessingStatus: 1,
  },
  {
    AssessingStatus: 1,
  },
  {
    AssessingStatus: 2,
  },
  {
    AssessingStatus: 2,
  },
  {
    AssessingStatus: 2,
  },
];

var assessingOfficerArr = assessingOfficer.map((el) => el.AssessingStatus);

var deepAssessingOfficerArr = JSON.parse(JSON.stringify(assessingOfficerArr));

for (let i = 0; i < deepAssessingOfficerArr.length; i++) {
  if (i === 0)
    assessingOfficerArr[0] = deepAssessingOfficerArr[0] === 1 ? 3 : deepAssessingOfficerArr[0];
  if (i > 0)
    assessingOfficerArr[i] =
      deepAssessingOfficerArr[i] === 1
        ? 3
        : deepAssessingOfficerArr[i - 1] === 1
        ? 1
        : deepAssessingOfficerArr[i];
}

console.log("assessingOfficerArr", assessingOfficerArr);

本篇关于《如何用 JavaScript 替换 JSON 对象数组中特定值的“AssessingStatus”?》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于文章的相关知识,请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>