使用Javascript从数组或对象中提取value属性

时间:2019-04-13 16:23:00

标签: javascript json aws-lambda webhooks

我在网站的下拉框中有一些选项,然后通过webhook发送给我,以从中提取详细信息。我正在尝试从ageId对象中提取 value

但是根据选择的下拉菜单项,它可以放置在数组中或添加了其他一些细节的对象中。

Age Dropdown

选择成人选项时,ageId为: [ { i: 0, value: '25', label: 'Adult' } ]

选择高级选项时,ageId为: { '1': { i: 1, value: '65', label: 'Senior' } }

在我添加更多下拉选项之前,以下方法可以提取 25

的必需属性
const ageMinimum = event.ageId[0].value[Object.keys(event.ageId[0].value)[0]].value;

无论所选下拉菜单和随后更改的语法如何,如何每次都提取 value (例如25或65)属性?

1 个答案:

答案 0 :(得分:0)

您可以尝试:

var adult = [ { i: 0, value: '25', label: 'Adult' } ];
var senior = { '1': { i: 1, value: '65', label: 'Senior' } };
var tmp = senior; // Or adult

var ageMinimum  = (Array.isArray(tmp) ? tmp[0] : tmp[Object.keys(tmp)[0]]).value; // Edited to work with flexible first object property names
console.log(ageMinimum);