Javascript 如何在angualrjs中获取响应数组值的asc顺序

Javascript 如何在angualrjs中获取响应数组值的asc顺序,javascript,angularjs,Javascript,Angularjs,大家好,我正在使用angularjs,我有一组数据,并将其放在一个范围变量中,现在我需要的是,我需要根据日期“月”对获取数组值进行排序,我的日期格式DispenseMonth“:“9/1/2016”(MM/DD/YY)这是我的格式我在这里附上了小提琴现在我需要的是我得到数组顺序基于DispenseMonth-orderby Month帮助如何做到这一点 试试这个: var-app=angular.module(“过滤器”,[]); app.controller('StateShowCtrl',

大家好,我正在使用angularjs,我有一组数据,并将其放在一个范围变量中,现在我需要的是,我需要根据日期“月”对获取数组值进行排序,我的日期格式
DispenseMonth
“:“9/1/2016”(MM/DD/YY)这是我的格式我在这里附上了小提琴现在我需要的是我得到数组顺序基于
DispenseMonth
-orderby Month帮助如何做到这一点

试试这个:

var-app=angular.module(“过滤器”,[]);
app.controller('StateShowCtrl',['$scope','$http',函数($scope,$http){
var数据=[
{
“患者状态”:“AK”,
“分配月”:“2016年7月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2016年8月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2016年9月1日”
},
{
“患者状态”:“AK”,
“分配月”:“10/3/2016”
},
{
“患者状态”:“AK”,
“分配月”:“2016年11月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2017年2月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2017年3月1日”
}]    	
$scope.StateInformations=数据;
//console.log($scope.stateformations);
$scope.add=函数(){
$scope.StateInformations.push({
“患者状态”:“AK”,
“分配月”:“2017年3月2日”
});
}  	
}     
]);

  • {{item | json}}
试试这个:

var-app=angular.module(“过滤器”,[]);
app.controller('StateShowCtrl',['$scope','$http',函数($scope,$http){
var数据=[
{
“患者状态”:“AK”,
“分配月”:“2016年7月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2016年8月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2016年9月1日”
},
{
“患者状态”:“AK”,
“分配月”:“10/3/2016”
},
{
“患者状态”:“AK”,
“分配月”:“2016年11月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2017年2月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2017年3月1日”
}]    	
$scope.StateInformations=数据;
//console.log($scope.stateformations);
$scope.add=函数(){
$scope.StateInformations.push({
“患者状态”:“AK”,
“分配月”:“2017年3月2日”
});
}  	
}     
]);

  • {{item | json}}

据我所知,您只对当月的排序感兴趣,因此您可以应用此非常简短的排序功能:

data.sort( (a,b) => a.DispenseMonth.split('/')[0] - b.DispenseMonth.split('/')[0]).

据我所知,您只对当月的排序感兴趣,因此您可以应用此非常简短的排序功能:

data.sort( (a,b) => a.DispenseMonth.split('/')[0] - b.DispenseMonth.split('/')[0]).
使用日期对象中的
getMonth()
进行排序

var-app=angular.module(“过滤器”,[]);
app.controller('StateShowCtrl',['$scope','$http',
函数($scope,$http){
var数据=[
{
“患者状态”:“AK”,
“分配月”:“2016年7月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2016年8月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2016年9月1日”
},
{
“患者状态”:“AK”,
“分配月”:“10/1/2016”
},
{
“患者状态”:“AK”,
“分配月”:“2016年11月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2017年2月2日”
},
{
“患者状态”:“AK”,
“分配月”:“2017年3月5日”
}
]
$scope.StateInformations=data.sort(函数(a,b){
返回新日期(a.DispenseMonth).getMonth()-新日期(b.DispenseMonth).getMonth();
});
console.log($scope.stateformations);
}    
]);

使用日期对象中的
getMonth()
进行排序

var-app=angular.module(“过滤器”,[]);
app.controller('StateShowCtrl',['$scope','$http',
函数($scope,$http){
var数据=[
{
“患者状态”:“AK”,
“分配月”:“2016年7月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2016年8月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2016年9月1日”
},
{
“患者状态”:“AK”,
“分配月”:“10/1/2016”
},
{
“患者状态”:“AK”,
“分配月”:“2016年11月1日”
},
{
“患者状态”:“AK”,
“分配月”:“2017年2月2日”
},
{
“患者状态”:“AK”,
“分配月”:“2017年3月5日”
}
]
$scope.StateInformations=data.sort(函数(a,b){
返回新日期(a.DispenseMonth).getMonth()-新日期(b.DispenseMonth).getMonth();
});
console.log($scope.stateformations);
}    
]);


i need to sort by month@sajal的可能副本i need to sort by month@sajal的可能副本如果以后添加或修改某些项目,此答案将不起作用,因此您应该在手动执行排序时调用sort方法。您是对的,每当修改数组时,您都必须再次手动排序。但我更喜欢这种方法ach,因为在模板中实现逻辑会对性能产生巨大影响。此外,使用此功能,您可以轻松实现一个
过滤器
。如果以后添加或修改某些项,此答案将不起作用,因此您应该在任何时候手动调用排序方法。您是对的,每当修改数组时,您都必须再次对其进行一年一次的排序。但我更喜欢这种方法,因为在模板中实现逻辑会对性能产生巨大影响。此外,使用此功能,您可以轻松实现
过滤器。