2

我想用析构函数分配两个变量。我目前的尝试如下所示:

const { textContent, dataset.value: dataValue } = dropDown;

dropDown是具有数据属性(值)和内部文本的 DIV 节点。

这显然没有成功,我收到了错误消息Uncaught SyntaxError: missing : after property id。正因为如此,我改变了这样的代码:

const { textContent, dataset: dataValue } = dropDown;

这确实工作得更好, textContent 已使用正确的变量成功声明。但是,我希望为变量dataValue分配DIV 节点的数据属性( dataset.value )的内容。运行上面的代码后,我还发现 dataset 属性包含一个 DOMStringMap。

这是结果,代码输出: { "textContent": "Select", "dataValue": { "value": "none" } }

如何通过析构将 dataset.value 的内容直接分配给变量 dataValue?

4

1 回答 1

1

嵌套对象可以像这样解构,

const object = { "textContent": "Select", "dataset": { "value": "none" } };

let {textContent, dataset: {value: dataValue }} = object;
console.log(dataValue);

于 2021-09-19T16:02:39.080 回答