gpt4 book ai didi

javascript - 函数调用的对象解构

转载 作者:数据小太阳 更新时间:2023-10-29 04:34:19 25 4
gpt4 key购买 nike

有没有办法就地解构 JS 对象,而不是将解构的变量分配给范围?

而不是这样做:

const { a, b, c } = obj;
someFunction(a, b, c);

我想这样做:

someFunction({a, b, c} from obj);

或功能等同的东西。

我想在有这两个规定的情况下这样做:

  • 我不想将变量名放入封闭范围。

  • 我不想传递整个对象 obj,因此不能选择扩展运算符。

我唯一的选择就是使用

someFunction(obj.a, obj.b, obj.c);

这在这种情况下很好,但是当 obj 是一个长标识符时会降低可读性。

这样的事情可能吗?我尝试在表达式中使用赋值作为解决方法,但我的 IDE 提示它找不到名称 abc:

someFunction({a, b, c} = obj);

最佳答案

一个选择是使用 .map 来提取您想要的每个属性的值,并将其传播到参数列表中:

someFunction(
...['a', 'b', 'c'].map(prop => obj[prop])
);

解构需要创建中间变量,不幸的是,这是您不想要的。

关于javascript - 函数调用的对象解构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55779556/

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