javascript - 使用 Angular 循环遍历 json 数据并填充缺失值

标签 javascript json angularjs loops duplicate-data

所以我遇到了这个问题,我使用来自外部 json 文件的数据填充范围输入...

所以基本上数据有一堆对象,每个对象中有一组值和文本。但某些对象没有连续的值可以循环并在范围 slider 上输出,如下所示:

var someObj = [
  {
    value: 1,
    text: 'A'
  },
  {
    value: 2,
    text: 'B'
  },
  {
    value: 3,
    text: 'C'
  },
  {
    vaule: 5,
    text: 'D'
  },
  {
    value: 6,
    text: 'E'
  },
  {
    vaule: 8,
    text: 'F'
  }
];

请注意,Value: 4 和 value: 7 缺失,这也可能会发生变化,例如在某些对象中 value: 11 和 value: 13 也缺失。

所以基本上我需要实现的是循环遍历每个对象,如果缺少值,则添加该值并从之前的值复制文本值,例如......

var someObj = [
  {
    value: 1,
    text: 'A'
  },
  {
    value: 2,
    text: 'B'
  },
  {
    value: 3,
    text: 'C'
  },
  {
    vaule: 5,
    text: 'D'
  },
  {
    value: 6,
    text: 'E'
  },
  {
    vaule: 8,
    text: 'F'
  }
];

会变成

var someObj = [
  {
    value: 1,
    text: 'A'
  },
  {
    value: 2,
    text: 'B'
  },
  {
    value: 3,
    text: 'C'
  },
  {
    value: 4,
    text: 'C'
  },
  {
    vaule: 5,
    text: 'D'
  },
  {
    value: 6,
    text: 'E'
  },
  {
    vaule: 7,
    text: 'E'
  },
  {
    vaule: 8,
    text: 'F'
  }
];

这可能吗?如果可以的话我该怎么做??

提前致谢

最佳答案

var i=0;
do{
if(someObj[i].value!=i+1){
    var obj = {}
    debugger;
    obj['value']= i+1;
    obj['text']= someObj[i-1].text;
    someObj.splice(i,0,obj);
}
i++;

}while(i<someObj.length);

引用这个:https://jsfiddle.net/cw5kkpgu/

关于javascript - 使用 Angular 循环遍历 json 数据并填充缺失值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32735593/

相关文章:

javascript - AngularJS http promise 触发 4 次

javascript - 从数据库中提取 javascript 代码,通过 jquery 插入它

javascript - ng 重复无法在 ion-slide-box 上正常工作 Ui 变得扭曲

javascript - Node + Passport ,错误: Authentication strategies must have a name

php - Javascript - 从其他地方调用的函数返回一个值

json - jq无法解析MongoDB输出文档

javascript - AngularJS + ion-list ng-repeat 不填充列表

angularjs - 有没有办法让 TypeScript 在客户端的 Plunkr 中转译?

c# - 将 json 数据加载到具有多个系列的 highcharts

php - 如何在 laravel 中解码 Json 对象并在 laravel 中对其应用 foreach 循环