Quiero asignar dos variables con destrucción. Mi intento actual se ve así:
const { textContent, dataset.value: dataValue } = dropDown;dropDown es un nodo DIV con un atributo de datos (valor) y texto interno.
Obviamente, esto no funcionó, recibí el mensaje de error Uncaught SyntaxError: falta: después de la identificación de la propiedad . Debido a esto, cambié el código así:
const { textContent, dataset: dataValue } = dropDown;Esto funcionó mejor, textContent se declaró correctamente con la variable correcta. Sin embargo, quiero que la variable dataValue se asigne con el contenido del atributo de datos ( dataset.value ) del nodo DIV. Después de ejecutar mi código anterior, también descubrí que la propiedad del conjunto de datos contiene un DOMStringMap.
Este es el resultado, el código genera: { "textContent": "Select", "dataValue": { "value": "none" } }
¿Cómo puedo asignar el contenido de dataset.value a la variable dataValue directamente con la destrucción?
Los objetos anidados se pueden desestructurar así,
const object = { "textContent": "Select", "dataset": { "value": "none" } }; let {textContent, dataset: {value: dataValue }} = object; console.log(dataValue);