javascript - 如何将第二个数组中的 CompletedCount 值更改为 230?

标签 javascript arrays

我需要更新第二个数组中元素的值并将其更改为第一个数组的完成计数...

我需要使用 JSON 文件来完成此操作,并且第一个数组的完成计数需要是分配的值,即 30 抱歉之前不清楚..

我尝试过使用 parseInt()..我对 javascript 本身很陌生...

function printjson() {
    var first = new Array(
        {
            projectId: '230',
            title: 'Nikhil',
            status: 'Nikhil',
            seenCount: 0,
            inProgressCount: 0,
            completedCount: 30
        },
        {
            projectId: null,
            title: null,
            status: null,
            seenCount: 0,
            inProgressCount: 0,
            completedCount: 1,
        }
    );
    var second = new Array(
        {
            id: '230',
            name: 'project-qa-test',
            customQuestion: 'What did you get done today?',
            maxSyncItems: null,
            orderIndex: 0,
            hidden: false,
            dones: [],
            unReported: 0,
            seenCount: 0,
            inProgressCount: 0,
            completedCount: 0,
        }
    );
    if (first.projectId == second.Id) {
        second.completedCount = 230;
    }
    console.log(second);
    console.log(second.completedCount);
}
printjson();

预期结果应该是:

[
    {
        id: '230',
        name: 'project-qa-test',
        customQuestion: 'What did you get done today?',
        maxSyncItems: null,
        orderIndex: 0,
        hidden: false,
        dones: [],
        unReported: 0,
        seenCount: 0,
        inProgressCount: 0,
        completedCount: 230
    },
]
230

但我得到:

[
    {
        id: '230',
        name: 'project-qa-test',
        customQuestion: 'What did you get done today?',
        maxSyncItems: null,
        orderIndex: 0,
        hidden: false,
        dones: [],
        unReported: 0,
        seenCount: 0,
        inProgressCount: 0,
        completedCount: 0
    },
    completedCount: 230 
]
230

最佳答案

由于firstsecond是数组,因此您必须使用正确的索引来获取/设置对象属性。

尝试:

if (first[0].projectId == second[0].id){
  second[0].completedCount = 230;
}

function printjson()
{
  var first=new Array( 
  { 
    projectId: '230',
    title: 'Nikhil',
    status: 'Nikhil',
    seenCount: 0,
    inProgressCount: 0,
    completedCount: 30 
  },
  { 
    projectId: null,
    title: null,
    status: null,
    seenCount: 0,
    inProgressCount: 0,
    completedCount: 1 ,
  }
  );
  var second=new Array(
    {
      id: '230',
      name: 'project-qa-test',
      customQuestion: 'What did you get done today?',
      maxSyncItems: null,
      orderIndex: 0,
      hidden: false,
      dones: [],
      unReported: 0,
      seenCount: 0,
      inProgressCount: 0,
      completedCount: 0, 
    } 
  );
  if (first[0].projectId == second[0].id){
    second[0].completedCount = 230;
  }
  console.log(second);
  console.log(second[0].completedCount);
}
printjson();

关于javascript - 如何将第二个数组中的 CompletedCount 值更改为 230?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53940264/

相关文章:

javascript - d3 排序仅适用于选择行

javascript - 在 ExtJS 中向商店代理添加 header 一次

arrays - Swift 4 按值复制数组

javascript - 如何检查对象数组中的缺失值并使用特殊字符添加缺失值

javascript - 切换变量 javascript 的值

javascript - 从什么时候开始div支持 `onchange`事件,这是一个错误吗?

javascript - jQuery - 无法获取 append 元素的属性

javascript - 尝试使用 javaScript 创建简单的幻灯片,但图像没有改变

c++ - 为什么我的程序运行几次后就崩溃了?

java - 在java中将String转换为int数组