首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ES6解构获取嵌套对象属性

ES6解构获取嵌套对象属性
EN

Stack Overflow用户
提问于 2019-09-27 14:06:29
回答 2查看 83关注 0票数 2

我在数组中有下面的对象。在迭代时,我需要访问循环中的特定属性。我可以获取基本属性,但无法获取嵌套属性值。

代码语言:javascript
复制
let data = [{
  id:"0",
  value:{
    empId:"123",
    emp_type:"perm",
    schedule:{
      abcSchedule:{cron_str: "0 13 * * 0,3,4,5,6"}
    }
  }
}];


var newMap = data.map(({ idx: i, value: { empId, emp_type, /*cron_str ? how to get  */  } }) => console.log(emp_type));

在解构的帮助下,我如何在地图中获得cron_str。如果未提供任何值,则应具有默认值。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-09-27 14:11:11

您可以使用{value:{schedule:{abcSchedule:{cron_str}}}}

代码语言:javascript
复制
let data = [{
    id: "0",
    value: {
      empId: "123",
      emp_type: "perm",
      schedule: {
        abcSchedule: {
          cron_str: "0 13 * * 0,3,4,5,6"
        }
      }
    }
  },
  {
    id: "1",
    value: {
      empId: "1234",
      emp_type: "merm",
      schedule: {
        abcSchedule: {
        }
      }
    }
  },
  {
    id: "2",
    value: {
      empId: "1235",
      emp_type: "mtermerm",
      schedule: {
        abcSchedule: {
          cron_str: null
        }
      }
    }
  },
  {
    id: "3",
    value: {
      empId: "12356",
      emp_type: "apple",
      schedule: {
        abcSchedule: {
          cron_str: undefined
        }
      }
    }
  }
];


var newMap = data.map(({
  value: {
    empId,
    emp_type,
    schedule: {
      abcSchedule: {
        cron_str
      }
    }
  }
}) => console.log(empId, cron_str));

票数 2
EN

Stack Overflow用户

发布于 2019-09-27 14:09:07

代码语言:javascript
复制
 var newMap = data.map(({ idx: i, value: { empId, emp_type, schedule: { abcSchedule: { cron_str }}} }) => console.log(emp_type, cron_str));

就像你已经用value做的那样进行解构。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58128683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档