Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何为未知JSONData自动添加制表器列设置_Javascript_Arrays_Json_Tabulator - Fatal编程技术网

Javascript 如何为未知JSONData自动添加制表器列设置

Javascript 如何为未知JSONData自动添加制表器列设置,javascript,arrays,json,tabulator,Javascript,Arrays,Json,Tabulator,我是一个新开发人员,我有一个Json对象,我不知道它是我需要添加到tablator的内容 根据定义,我需要为每个列添加详细信息,例如: var JSONData =[{A:12,B:3,C:13},{A:5,B:23,C:3},{A:1,B:30,C:103}] var tabulator1 = new Tabulator("#table", { data:JSONData, columns:[ {title:"A", field:"A", sorter:"str

我是一个新开发人员,我有一个Json对象,我不知道它是我需要添加到tablator的内容

根据定义,我需要为每个列添加详细信息,例如:

var JSONData =[{A:12,B:3,C:13},{A:5,B:23,C:3},{A:1,B:30,C:103}]

var tabulator1 = new Tabulator("#table", {
    data:JSONData,
    columns:[
       {title:"A", field:"A", sorter:"string",align:"right", editor:true},
       {title:"B", field:"B", sorter:"string",align:"right", editor:true},
       {title:"C", field:"C", sorter:"string",align:"right", editor:true},
     ],
});
它现在正在工作,但是如果
var JSONData=[未知的JSON数据列表]

我知道如何通过
Object.keys(JSONData[0])获取列的标题
我可以保留如下列的默认定义

{title:"A", field:"A", sorter:"string",align:"right", editor:true},
但是如何循环未知的JSONData并将其附加到
列:[]

我可能至少需要添加标题和字段数据,以便制表器正常工作


另一个解决方案:我可以使用flask-jinja2从后端循环它,但我不想尽可能多地依赖服务器资源。

这个解决方案对我很有效。 如果数组中的所有元素具有相同数量的键,则此操作将起作用

var JSONData =[{A:12,B:3,C:13},{A:5,B:23,C:3},{A:1,B:30,C:103}]

var tabulator1 = new Tabulator("#table", {
  data:JSONData,
  columns:Object.keys(JSONData[0]).map(obj => {
    return {
      title: obj,
      field: obj,
      sorter: "string",
      align: "right",
      editor: true
    };
  });
});