使用alasql获取所有数组属性数据

时间:2015-12-26 15:06:48

标签: json alasql

我这里有一个包含数据数组的JSON对象。我的问题是如何才能将数组数据导出到excel?我目前正在使用alaSql。

{
 a: 'test',
 b: [
     {c:'test1',
      d: 'test2'},
     {c:'test2', d: 'test1'}]
}

1 个答案:

答案 0 :(得分:1)

要遍历嵌套的JSON对象,您需要使用AlaSQL的SEARCH运算符,如下所示:

var data = [
{
   a: 'test',
   b: [
       {c:'test1',
        d: 'test2'},
       {c:'test2', d: 'test1'}]
  },
 {
   a: 'testB',
   b: [
       {c:'test3',
        d: 'test4'},
       {c:'test5', d: 'test6'}]
  }
];

var res = alasql('SEARCH / AS @p b / CLONEDEEP() SET(a=@p->a) \
   INTO XLSX("restest390a.xlsx",{headers:true}) FROM ?',[data])

在这句话中AlaSQL:

  • 遍历源对象的所有元素,
  • 然后将每个元素保存到临时变量@p
  • 然后调查' b'元素属性
  • 克隆记录以防止更改原始数据
  • 将当前记录的属性a设置为已保存变量@p
  • 的属性a
  • 将所有记录保存到Excel文件