如何用 JavaScript 替换 JSON 对象数组中特定属性值?
在IT行业这个发展更新速度很快的行业,只有不停止的学习,才不会被行业所淘汰。如果你是文章学习者,那么本文《如何用 JavaScript 替换 JSON 对象数组中特定属性值?》就很适合你!本篇内容主要包括##content_title##,希望对大家的知识积累有所帮助,助力实战开发!

前端 js 替换问题解决
问题描述:如何替换给定 json 对象中特定属性值,其中对象可能包含多个具有相同属性值的对象。
json 对象如下:
{
"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
}
]
}
解决方案:
以下 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);
结果:
经过上述处理后,得到的 assessingofficerarr 数组如下:
[ 1, 2, 3, 1, 2, 2, 2 ]
其中,assessingstatus 为 1 的值被替换为 3,这符合要求,指示值已成功替换。
理论要掌握,实操不能落!以上关于《如何用 JavaScript 替换 JSON 对象数组中特定属性值?》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注米云公众号吧!
- 如何阻止stylelint将top、bottom、left和right属性合并成inset?
