如何将数组作为 JavaScript 中的新 属性 推入另一个数组元素?
How to push an array inside another array element as a new property in JavaScript?
所以,
例如,我有以下数组
var sections = [{ name: 'apple', count: 20 },
{ name: 'banana', count: 80 },
{ name: 'oranges', count: 10 }]
现在,如果我想添加更多项目,那么我可以
sections.push({ name: 'mango', count: '32' });
这会将新数组添加到部分。
现在,假设我有另一个数组显示水果的来源和数量。
var country = [{ country: 'usa', count: 5 },
{ country: 'brazil', count: 27 }]
所以,我想将这个新的 country
数组添加到 sections
的第三个元素,并使用一个名为 country 的新属性,如下所示。
var sections = [{ name: 'apple', count: 20 },
{ name: 'banana', count: 80 },
{ name: 'oranges', count: 10,
country: [{ country: 'usa', count: 5 },
{ country: 'brazil', count: 27 }]
}]
我该怎么做?我尝试了 push
、splice
但根本无法弄清楚。
我还尝试了 sections[3].push.apply(country).. 以及许多其他我不记得了的东西。要么我收到错误,要么只是没有按照我的意愿推送数组。
您可以尝试这样的操作:
sections[2].country = country;
在这里,写 sections[2]
我们可以查看对 sections
的第三项的引用。然后我们定义一个名为 country
的 属性 并为其分配我们想要的值。
为什么推送不起作用?
push 是一种数组方法,它使您能够将元素压入数组的末尾。如果您尝试在 sections[2]
上使用 push 将不起作用,因为 sections[2]
不是数组。 splice
也是一样,它是一个数组方法。
push
用于添加到数组,而不是用于向对象添加属性。对于 属性,只需分配 属性 名称。
sections[2].country = country;
如果 属性 已经存在并且您想添加到它,您可以使用 push
如下:
section[2].country.push({country: 'venezuela', count: 20});
并且不要忘记数组索引从 0
开始,所以第三个元素是 [2]
。
所以, 例如,我有以下数组
var sections = [{ name: 'apple', count: 20 },
{ name: 'banana', count: 80 },
{ name: 'oranges', count: 10 }]
现在,如果我想添加更多项目,那么我可以
sections.push({ name: 'mango', count: '32' });
这会将新数组添加到部分。
现在,假设我有另一个数组显示水果的来源和数量。
var country = [{ country: 'usa', count: 5 },
{ country: 'brazil', count: 27 }]
所以,我想将这个新的 country
数组添加到 sections
的第三个元素,并使用一个名为 country 的新属性,如下所示。
var sections = [{ name: 'apple', count: 20 },
{ name: 'banana', count: 80 },
{ name: 'oranges', count: 10,
country: [{ country: 'usa', count: 5 },
{ country: 'brazil', count: 27 }]
}]
我该怎么做?我尝试了 push
、splice
但根本无法弄清楚。
我还尝试了 sections[3].push.apply(country).. 以及许多其他我不记得了的东西。要么我收到错误,要么只是没有按照我的意愿推送数组。
您可以尝试这样的操作:
sections[2].country = country;
在这里,写 sections[2]
我们可以查看对 sections
的第三项的引用。然后我们定义一个名为 country
的 属性 并为其分配我们想要的值。
为什么推送不起作用?
push 是一种数组方法,它使您能够将元素压入数组的末尾。如果您尝试在 sections[2]
上使用 push 将不起作用,因为 sections[2]
不是数组。 splice
也是一样,它是一个数组方法。
push
用于添加到数组,而不是用于向对象添加属性。对于 属性,只需分配 属性 名称。
sections[2].country = country;
如果 属性 已经存在并且您想添加到它,您可以使用 push
如下:
section[2].country.push({country: 'venezuela', count: 20});
并且不要忘记数组索引从 0
开始,所以第三个元素是 [2]
。