gpt4 book ai didi

javascript - 如何从JS中的对象数组中提取和附加对象

转载 作者:行者123 更新时间:2023-12-02 06:14:26 24 4
gpt4 key购买 nike

这个问题很简单。我觉得这个问题很愚蠢,因为我确信答案就在我面前,但无论如何,问题就在这里。

我得到了一个响应数据,JSON 有点像这样:

$scope.testData = [
{
food: 'wet',
animal: [{name: 'cat', value: '1'},
{name: 'dog', value: '2'}]
},
{
food: 'dry',
animal: [{name: 'bird', value: '3'},
{name: 'fish', value: '4'}]
}
];

手头的问题是如何将嵌套对象拉到 animal 下所以我可以设置一个字符串并用当前的食物对象插入它,例如:

我会拿出动物:名字
所以在 food: 'wet' 的对象下我会拿出动物:
[{name: 'cat', value: '1'},
{name: 'dog', value: '2'}]

然后我会将对象名称“猫”和“狗”放入像 cat、dog 这样的字符串中,然后将新值推送到一个新的对象数组中,如下所示
$scope.newData = [
{
food: 'wet',
animalType: 'cat, dog'
},
{
food: 'dry',
animalType: 'bird, fish'
}
];

这一切都完成了,所以我可以有一个更干净的 UI 网格

最佳答案

使用 Array.prototype.map()方法:

  $scope.newData = $scope.testData.map(function(obj){
return {
food: obj.food,
animal: obj.animal.map(function(a){
return a.name;
}).join(', ') // special shout out to @vanev_ for making it a comma separated list
}
});

console.log($scope.newData);

关于javascript - 如何从JS中的对象数组中提取和附加对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42145714/

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