You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为JavaScript对象的属性添加新字段?(对象数组转换场景)

嘿,这个调整其实很直观,我给你一步步说怎么改:

首先先复盘下你原来的核心逻辑大概是这样的(我根据你的描述还原的):

const ratings = {};
for (const key in result) {
  const objReviewee = result[key];
  const reviewee = /* 这里是你处理reviewee键的逻辑,比如提取某个字段或者格式化字符串 */;
  // 原来的赋值是直接把avgrating作为值
  ratings[reviewee] = objReviewee.avgrating;
}

现在要让每个键对应一个包含avgrating和status的对象,只需要把赋值的单个值改成一个对象字面量就行:

const ratings = {};
for (const key in result) {
  const objReviewee = result[key];
  const reviewee = /* 你的reviewee处理逻辑不变 */;
  // 修改这里,把单个值换成包含两个属性的对象
  ratings[reviewee] = {
    avgrating: objReviewee.avgrating,
    status: 0 // 这里如果是固定值就写0,要是有动态判断逻辑可以替换,比如根据评分设状态
  };
}

举个动态status的例子,如果想根据avgrating来设置status(比如评分≥4设为1,否则0),可以这么写:

ratings[reviewee] = {
  avgrating: objReviewee.avgrating,
  status: objReviewee.avgrating >= 4 ? 1 : 0
};

这样处理后,ratings里的每个键就会像你例子里的testtest1:{avgrating:4,status:0}一样,是包含两个属性的对象啦~

内容的提问来源于stack exchange,提问作者Jennica

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:38:53