JavaScript fügt ein Array zu einem vorhandenen Array von Objekten hinzu
P粉556159786
2023-09-04 11:46:33
<p>我有下面的代码片段</p>
<p>
<pre class="brush:js;toolbar:false;">const arr = [
{
„name“: „Bescheinigungskomponente 1“,
"Werte": [
{
„component“: „Bescheinigungskomponente 1“
},
{
„component“: „Bescheinigungskomponente 1“
},
{
„component“: „Bescheinigungskomponente 1“,
}
]
},
{
„name“: „Bescheinigungskomponente 2“,
"Werte": [
{
„id“: „10005884“,
„url“: „https://www.msn.com“,
„bfaId“: „G44.5.3.1N/A“,
„component“: „Bescheinigungskomponente 2“
},
{
„id“: „10005883“,
„url“: „https://www.hotmail.com“,
„bfaId“: „G44.5.3.2N/A“,
„component“: „Bescheinigungskomponente 2“
}
]
},
{
„name“: „Bescheinigungskomponente 3“,
"Werte": [
{
„id“: „10005882“,
„url“: „https://www.rediffmail.com“,
„bfaId“: „G44.5.3.3N/A“,
„component“: „Bescheinigungskomponente 3“
}
]
}
]
const bool = arr.map(group => group.values.every(val => val.id));
console.log(bool);</pre>
</p>
<p>这是什么原因呢?我想将该属性添加到现有对象数组中,作为 <code>name</code></p> 下方的 <code>isInvalid: true/false</code>
<p>预期的 O/P(在每个具有以下键值对的对象中添加属性)
<code>isInvalid:真/假</code></p>
您应该使用 some(),而不是 every()。
every() 方法用于检查数组中的所有元素是否满足给定条件。阵列。 some() 方法用于检查数组中至少有一个元素是否满足给定的条件。
那是因为你的算法不正确。
every
方法将检查是否所有对象都有一个 id,但这不是您想要的,对吧?所以试试这个吧