gpt4 book ai didi

javascript - 将特定对象(根据给定条件)从对象数组复制到AngularJS中的另一个数组中

转载 作者:行者123 更新时间:2023-12-03 11:32:29 27 4
gpt4 key购买 nike

我想从现有的对象数组创建一个新的对象数组,这样新数组将只包含那些与 if 语句中定义的条件匹配的对象。下面是我正在尝试的代码片段

要求是,当 key.status=='completed' 条件被命中时,只有那些在 orders 数组中状态为 : 'completed' 的对象才会被复制到临时数组中。但是由于使用 angular.copy 对象的整个副本正在复制到临时数组中。 .

--------html-----

<body ng-app ="myModule">
<div ng-controller="myController">
<div ng-repeat="order in temp">

{{order.id}} -- {{order.status}} -- {{order.name}}

</div>
</div>
</body>

--------xxxx------

--------JS----------

<script>


var myModule = angular.module('myModule', []);

myModule.controller('myController', function($scope) {

$scope.orders = [
{id: '101' , status : 'completed' , name: 'Jacopo' } ,
{id: '102' , status : 'Rejected' , name: 'Dan' } ,
{id: '103' , status : 'created' , name: 'Erick' }
] ;

$scope.temp = [ ] ;

angular.forEach($scope.orders , function(key,value){
if(key.status == 'completed') {
angular.copy($scope.orders,$scope.temp)
}

} );

} ) ;

</script>

------xxx--------

最佳答案

您可以使用 Array.filter 来执行此操作:

$scope.temp = $scope.orders.filter(function(o){return o.key === 'completed'});

关于javascript - 将特定对象(根据给定条件)从对象数组复制到AngularJS中的另一个数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26676067/

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