如何将 JSON 对象中值为 1 的属性替换为特定颜色,并按照顺序循环替换?

前端 js 替换特殊属性值

在给定的 JSON 对象中,需要将对象中值为 1 的属性替换为红色。如果有多个值需要替换,则按照前后顺序进行如下替换:第一个值为 1 的替换为红色,之后第一个值为 1 的替换为高亮蓝色,之后的依次类推。

解决方案:

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];
}

结果:

assessingOfficerArr [ 3, 1, 3, 1, 2, 2, 2 ]

预览:

image.png

以上就是如何将 JSON 对象中值为 1 的属性替换为特定颜色,并按照顺序循环替换?的详细内容,更多请关注硕下网其它相关文章!