在JSON grunt任务上保存JavaScript对象

时间:2016-08-10 18:24:24

标签: javascript gruntjs

我对这个工具很新,所以我试图在任务上尽我所能。现在,我正在使用插件通过grunt-gss-to-json插件阅读Google云端硬盘上的文档,问题不在于阅读,而是输出。我需要改变保存json的方式因为与我需要阅读它的方式不兼容

实际输出: all.json

[
  {
    "text": "ACCEPT",
    "es": "Aceptar",
    "en": "Agreed"
  }
]

需要的输出: es.json

{
 "ACCEPT": "Aceptar"
}

en.json

{
 "ACCEPT": "Agreed"
}

我正在考虑阅读all.json并基于其他人创建其他但我不知道如何在es.json和en.json文件上编写对象

2 个答案:

答案 0 :(得分:-1)

我不知道我是否真的明白了这一点,但也许它有所帮助:

var obj = [
      {
        "text": "ACCEPT",
        "es": "Aceptar",
        "en": "Agreed"
      }
    ];
    var newObj = {};
    obj.map(function(item){
      newObj["es"]={};
      newObj["en"]={};
      newObj["es"][item.text] = item.es;
      newObj["en"][item.text] = item.en;
    })
    newObj.es; // returns {"ACCEPT": "Aceptar"}
    newObj.en; // returns {"ACCEPT": "Agreed"}

答案 1 :(得分:-1)

var all = [{"text": "ACCEPT","es": "Aceptar","en": "Agreed"}]; var en = {} var es = {} all.forEach(function (single) {es[single.text] = single.es; en[single.text] = single.en;});

这里我们迭代所有翻译并将它们分成en和es每个