问题标签 [object-destructuring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
129 浏览

typescript - 对象破坏导致 TypeScript 中的“从不”类型

我的代码如下:

但这给了我以下错误:

我似乎无法理解为什么这会自动推断“从不”类型。我尝试明确声明类型但没有运气。

0 投票
3 回答
992 浏览

typescript - 解构/访问对象联合类型上可能存在或不存在的属性

我收到以下错误:

期望的结果:

如何在没有明确类型保护的情况下访问属性,例如:

这对我来说不是一个真正的选择,因为我正在使用大型联合,其中目标属性可能存在也可能不存在于许多对象上,这将是一团糟。

我还有什么其他选择?

0 投票
1 回答
204 浏览

typescript - 你可以破坏一个对象并对潜在的未定义常量进行无效合并吗?

我使用 React,所以我有一个 props 对象,例如:

有没有办法在破坏对象时使用无效合并?我不能使用这个(由于团队定义的 ESlint 规则):

0 投票
3 回答
279 浏览

javascript - 具有自身默认值的对象解构赋值

我需要破坏一些变量可能已经有值的对象。

这给了我

但我真正想要的是

如果 中存在同名的值,我想重写该值config,如果没有,请改用其原始值。

我无法在解构时分配默认值,因为这些值是先前分配的。

我知道我可以这样分配它,但它太笨重了,因为有超过 20 个变量。

有没有更好的方法来编写它而无需一直重复x = x

0 投票
0 回答
93 浏览

javascript - 对象解构在 ReactJs 脚本中不起作用

我正在将 Next js 用于应用程序。代码组件具有存储在父组件中的全局状态,并使用 ReactContext 传递给子组件。

在其中一个组件中,当我尝试通过解构父状态来创建状态组件时,它的行为方式无法预测。有时解构会初始化本地状态,有时则不会。

0 投票
3 回答
751 浏览

javascript - 如何将对象数组解构为其键的多个数组?

我的数据集是一个对象数组,它们都只有两个键(idname):

我想以这样一种方式解构它们,最终分别拥有一个 id-array 和一个 name-array:

我是这样做的,但我认为通过析构可能会做得更好:

0 投票
1 回答
31 浏览

javascript - 如何破坏包含以点为键的长字符串的对象

我有一个对象,其中包含以点“journey.hintText.journeyTags”为键的字符串。(由我无法修改的 api 响应返回)。我想破坏像 const {journey.hintText.journeyTags} = content 这样的内容对象,但它会引发错误。请让我知道如何破坏内容对象,非常感谢。

0 投票
1 回答
152 浏览

javascript - 原型函数参数中的数组解构

有没有一种方法可以在其原型函数的参数中解构数组?

例如,我可以使用 Array.prototype 函数(例如 forEach)来评估每个数组元素的值,并使用括号表示法记录单个子数组值:

如果我想通过分配的名称引用子数组元素,我可以通过解构来实现吗?目前,我知道我可以这样做:

我想使用解构来实现的是按照通常在典型函数参数中解构的方式分配这些变量名:

这可能吗?

0 投票
1 回答
164 浏览

javascript - 如何通过箭头函数分配数组元素的值

我需要使用箭头函数设置数组属性之一。在我的示例代码中,我添加了随机键和箭头函数。但是当我控制台输出时,我看不到“随机”键。这可以使用箭头函数来完成吗?

0 投票
1 回答
134 浏览

javascript - 解构赋值以将对象作为函数的参数传递

我正在 freeCodeCamp 上学习 Javascript,我遇到了通过重组分配将对象作为函数参数传递

我被要求

“在函数 half 的参数中使用解构赋值,仅在函数内部发送 max 和 min。”

//该解决方案对我来说没有意义,因为它甚至没有提到统计数据。它是如何工作的?有人可以解释一下吗。先感谢您。