【问题标题】:Map json Object with randomise array creation使用随机数组创建映射 json 对象
【发布时间】:2018-05-17 14:03:05
【问题描述】:

我有 JSON 对象和数组

sampleJson={"id":1,"option1":"","option2":"","option3":""}
sampleArray=["car","","Animals"]

我想以下列格式将 sampleArray 添加到 sampleJson

sampleJson={"id":1,"option1"="car","option2":"Animals","option3":""}

样本数组将像["","car",""] Or ["","animal","Car"]?一样随机化

【问题讨论】:

  • 您希望将sampleArray 元素分配为options 的顺序是什么?

标签: javascript java json angular angular2-directives


【解决方案1】:
var sampleJson={"id":1,"option1":"","option2":"","option3":""}
var sampleArray=["car","","Animals"];
var count = 1;
sampleArray.forEach(function(ele){
    if(ele.length){
        sampleJson['option' + count] = ele;
        count++;
    }
})
console.log(sampleJson);//{id: 1, option1: "car", option2: "Animals", option3: ""}

【讨论】:

  • 如果 sampleArray=["","fruits","cars"] 它显示 sampleJson={"id":1,"option2":"fruits","option3":"car "} 我想要它作为 sampleJson={"id":1,"option1":"fruits","option2":"car","option":""}
  • 你如何决定你想要的选项值的顺序。例如,您如何确定 option1fruitoption2car
  • 实际上我在输入框的角度 2 中使用两种方式绑定,它们是我们提供的 3 个输入框,在这种情况下至少 1 个是强制性的......如果用户在第 2 和在这种情况下,第三个文本框我必须管理这种 json 格式......他们将是任何情况
  • 嗨@Ash,我已根据您的要求编辑了我的答案。请检查它是否适合您。
【解决方案2】:

感谢您的帮助,我找到了解决方案

var i=1;
    sampleData.forEach(element => {
      if(element.length != 0){
        sampleJson['option'+i]=element;
        i++;
      }
    });

【讨论】:

    【解决方案3】:
    var sampleJson={"id":1,"option1":"","option2":"","option3":""}
    var sampleArray=["car","","Animals"]
    Object.keys(sampleJson).filter(function(k) {
        return k.includes('option');
    }).forEach(function(k,i) {
        if (sampleArray.length > i) 
            sampleJson[k] = sampleArray[i];
    });
    console.log(sampleJson)
    

    希望对你有帮助!

    【讨论】:

    • noo.. 上面的代码显示 {"id":1,"option1":"","option2":"car","option3":"fruits"} for sampleArray=["" ,car","fruits"] 案例...
    猜你喜欢
    • 1970-01-01
    • 2017-09-13
    • 1970-01-01
    • 1970-01-01
    • 2011-06-25
    • 2021-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多