首页 > 解决方案 > 如何从 Javascript 中的嵌套 JSON 中获取字段?

问题描述

我想从嵌套的 JSON 对象中获取一个字段作为用作参数的字符串。

我正在使用 github 项目https://github.com/bencripps/react-redux-grid

这个反应组件用于树形网格。

我有一个数据,我想将其映射为树形网格视图。

我的嵌套 JSON 对象如下。它来自一个 API。我想将“ 2020.total ”作为参数(第 4 行)

 "id": 1,
 "parentId": -1,
 "Name": "Category 1",
 "2020": {total:120, tax:12},
 "children": [{
                "id": 11,
                "parentId": 1,
                "Name": "Category 11",
                "2020":  {total:23, tax:2},
               
            }]

当我最终得到这个参数时,我将它用作下面代码中的变量(第 16 行)

  const complexData = {
    showTreeRootNode: false,
    data:datafromAPI,
    gridType: 'tree',
    dragAndDrop: true,
    columns: [
        {
            name: 'Name',
            className: 'additional-class',
            dataIndex: 'Name',
            sortable: false,
            expandable: true
        },
        {
            name: 'Total Payment',
            dataIndex: 2020.total,
            sortable: false,
            className: 'additional-class'
        }],
    
};

“名称”属性工作正常,但“总付款”不工作。

我尝试了这些语法;

'2020.total'
'[2020].total'
'[2020][total]'

我知道这是一个语法问题,但我不知道如何搜索它。

谢谢大家的回答。

标签: javascriptreactjstreeview

解决方案


let a = {
"id": 1,
"parentId": -1,
"Name": "Category 1",
"2020": {total:120, tax:12},
"children": [{
     "id": 11,
     "parentId": 1,
     "Name": "Category 11",
     "2020":  {total:23, tax:2},             
   }]
}

尝试a[2020].total


推荐阅读