【问题标题】:How to get keys from the following json如何从以下 json 中获取密钥
【发布时间】:2015-01-19 02:00:21
【问题描述】:

我正在使用带有 php 后端的 handsontable。我正在尝试动态创建表列标题,因此我可以创建一个列名数组,我可以使用以下方法将其输入到handsontable中:

colHeaders: ['ID', 'First', 'Last Name', 'Address'],

我在屏幕截图中包含了一个在后端生成的 JSON 示例。如何创建获取密钥以便创建 colHeaders 数组?我试过了:

 var keys = res.keys();

我的加载函数是:

            $parent.find('button[name=load]').click(function () {
              $.ajax({
                url: "AjaxController/tableLoad/"+tablename,
                dataType: 'json',
                type: 'GET',
                success: function (res) {

                    var keys = res.keys();
                    console.log(keys);


                    // create js title array from 1st row data
//                      colHeaders: ['ID', 'First', 'Last Name', 'Address'],
//                      handsontable.colHeaders: keys;
                  handsontable.loadData(res);
                  $console.text('Data loaded');
                  console.log(res)
                },

【问题讨论】:

    标签: javascript jquery json


    【解决方案1】:

    对于有效的JSON,使用Object.keys(object), 获取返回iterable 对象的键。

    var keys = Object.keys(res);
    

    【讨论】:

    【解决方案2】:

    您可以使用.map() 获取对象的键,如下所示:

    var keys = $.map(res, function(element,key) { return key; });
    

    但是,对于您提供的示例,一个对象数组,您将使用以下内容:

    var keys = $.map(res[0], function(element,key) { return key; }); 
    //RESULT: ["id", "name", "description"]
    

    【讨论】:

    • 我最终使用了这个。
    • 太棒了!很高兴它有帮助:) 享受!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多