将特定对象(根据给定条件)从对象数组复制到angularJS中的另一个数组中
Copying specific objects(according to given condition) from array of objects into an another array in angularJS
我想从现有的对象数组中创建一个新的对象数组,这样新数组将只有那些与if语句中定义的条件匹配的对象。下面是我正在尝试的代码片段
要求是当key.status=='completed'条件被命中时,只有订单数组中状态为'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(Angular)从一个对象数组到第二个数组查找值
- 在Javascript中转换对象数组
- 在JavaScript中通过索引从对象数组中获取值
- Backbone虹吸以获取对象数组
- 如何在DataTables 2.1中迭代对象数组
- Javascript-根据赋值顺序,按键合并对象数组
- 将事件附加到对象/数组
- jQuery$.inArray()总是返回-1和一个对象数组
- javascript处理一个对象数组以获得一个新的对象数组
- javascript在数组中获取对象数组中键的所有不同值
- 在对象数组中查找多个值的d3范围
- Undercore.js获取对象数组中键对象的值
- 在mongoose中使用正则表达式在对象数组中进行查询搜索
- 如何通过json对象数组为嵌套对象赋值
- 如何循环通过2个对象数组并通过匹配id进行合并
- 为对象数组创建列表项
- 如何使用javascript合并两个对象数组
- JSON到对象数组,并向每个对象添加项
- JavaScript:从对象数组中获取唯一值及其计数
- 按不同项目对对象数组进行排序