Javascript 如何使用同名的多个子关键点来分解对象

Javascript 如何使用同名的多个子关键点来分解对象,javascript,ecmascript-6,destructuring,Javascript,Ecmascript 6,Destructuring,分解以下对象的最干净方法是什么 const e = { target: { userid: { value: 'abc' }, password: { value: 'xyz' } } } 对象是HTML表单返回数据的方式,我尝试仅使用解构来检索值。我的尝试是: const {target: {userid: {value}, password: {value}}} = e; 但是它阻塞了具有相同属性名称的两个值。任何ES6替代

分解以下对象的最干净方法是什么

const e = {
  target: {
    userid: {
      value: 'abc'
    },
    password: {
      value: 'xyz'
    }
  }
}
对象是HTML表单返回数据的方式,我尝试仅使用解构来检索值。我的尝试是:

const {target: {userid: {value}, password: {value}}} = e;

但是它阻塞了具有相同属性名称的两个
值。任何ES6替代方案?

您可以通过将名称放在
后面,将值属性分解为具有明确名称的变量,例如

const {target: {userid: {value: myUserId}, password: {value: myPassword}}} = e;

myUserId
现在将具有值“abc”和
myPassword
'xyz'

旁注:
e:{…}
应该是
e={…}
,但您必须确保密钥可用。否则,必须默认为已分解对象(父对象)。