jquery - 转换对象数组以在javascript中进行排序?
问题描述
我正在尝试在我的视图中创建一个可排序的列表。每个行条目都作为一个对象存储在数组中,字符串值会打乱排序。
代码在 Angularjs 中。
我尝试了多种不同的创建列表的方法,虽然列表的排序功能有效,但值本身的排序不正确。我相信这是因为大多数排序错误的值都是字符串而不是整数。
数据示例:
$scope.Info = { length 14
Object {InformationID: 100, fiscalYear: 2019, Number: "9", endDate: "2019-11-09T00:00:00" …
...}}
我试过的代码:
$scope.Info = {};
$scope.number = [];
ContractsService.getInformation()
.then(function (results) {
$scope.Info = results.data;
angular.forEach($scope.Info, function (value) {
$scope.number.push(value.Number);
}
}
$scope.save = function (Detail) {
[not needed in example]
视图的循环显示:
<tr ng-repeat="Detail in Info | orderBy:rfrorder.Orderby:rfrorder.reverse">
我需要对 $scope.number 进行保存验证,以确保该数字尚未使用,因此将这些字段分开就可以了。但对于其余部分,我很确定我必须遍历 forEach 并转换字符串字段,然后以某种方式将转换后的值用作视图中的对象。
任何帮助,将不胜感激。
解决方案
要将Number
字段从字符串转换为数字:
$scope.Info.forEach(_ => _.Number = (+_.Number));
有关详细信息,请参阅
推荐阅读
- javascript - React 和 Firebase useEffect 不会更新组件
- powershell - 更改存档上的指定值 - PS
- oracle - 如何使函数返回约束的列名?
- jquery - 在动态页面中调用 ajax 不起作用
- angular - Angular(ngSubmit)表单不起作用,我该怎么做?
- reactjs - 没有看到 React 路由器与 heroku 一起用于生产
- javascript - Django:在 PayPal 上执行付款后,如何通过 Ajax 将网站重定向到另一个页面
- javascript - 从两个单词之间提取子字符串
- r - R中的求和函数给出不可信的结果
- math - 是否可以根据位置随时间的变化计算欧拉/方向角?