gpt4 book ai didi

javascript - 我可以将对象的所有键声明为变量吗?

转载 作者:行者123 更新时间:2023-12-02 16:36:52 24 4
gpt4 key购买 nike

我想要类似的东西

让 { * } = {test1: 'test', test2: 'test2'};

上面的代码应该声明两个新变量 test1 和 test2。

编辑1:我担心的是右侧对象可能有 10 个键。我不想做

让 { key1, key2 , key3 , ..., key10 } =

相反,有没有办法获取所有 10 个 key ?

最佳答案

目前没有类似的语法:你必须明确。即使对于 import 语法也不存在类似的东西,它会导入范围内的所有“键”(导出值)而不是显式的(声明导入哪些“键”,或分配整个模块到一个对象)。

如果您需要一个对象的大部分键,最好的方法可能是直接使用该对象 (o.test1) 而无需解构。

当然,如果您有权访问当前作用域对象,例如 globalThis,您可以随时执行以下操作:

Object.entries(o).forEach(([key, value]) => globalThis[key] = value)

但首先,只有当您将对象值分配给全局对象(因此没有局部作用域)时,它才会起作用;其次,我看不出编写此代码然后使用 test1 而不是避免此类代码并编写 o.test1 有何不同。(当然,写你永远不应该这样做的事情真的很可怕,我补充说只是为了完成)。

关于javascript - 我可以将对象的所有键声明为变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62548559/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com