繁体   English   中英

如何解析和求和逗号分隔的数字字符串

[英]How to parse and sum comma separated string of numbers

我从JSON读取数据时遇到问题。

这是我的控制器:

myApp.controller("abcdctrl", ['$scope', 'orderByFilter', '$http', function ($scope, orderBy, $http) {
console.log('abcdctrl');
$http.get("http://localhost:8080/api/session")
    .then(function (response) {
        $scope.data = response.data.session;
    });

$scope.getAvg = function () {
    var total = Number("0");
    for (var i = 0; i < $scope.data.length; i++) {
        total += parseInt($scope.data[i].testing);
    }
    return parseInt(total / $scope.data.length);
}
}]);

这是我的JSON

{
"session": [
    {
        "id": 1,
        "testing": "91,92,93,94,95,96,97",
        "playing": "11,12,13,14,15,16,17",
        "acc_id": 1
    },
    {
        "id": 2,
        "testing": "101,102,103,104,105,106,107",
        "playing": "1,2,3,4,5,6,7",
        "player_id": 2
    },
    {
        "id": 3,
        "testing": "111,112,113,114,115,116,117",
        "playing": "21,22,23,24,25,26,27",
        "acc_id": 3
    }
]
}

我想计算每个品尝和玩游戏的玩家的平均值,并想计算测试和玩耍的游戏的总体平均值。 我成功打印了整个JSON,但是在访问JSON中的元素时遇到了问题。

谢谢你的帮助

尝试这个:

 myApp.controller("abcdctrl", ['$scope', 'orderByFilter', '$http', function ($scope, orderBy, $http) { console.log('abcdctrl'); $http.get("http://localhost:8080/api/session") .then( function successCallback(response) { $scope.data = response.data.session; }, function errorCallback(response) { // called asynchronously if an error occurs // or server returns response with an error status. }); $scope.getAvg = function () { var total = Number("0"); for (var i = 0; i < $scope.data.length; i++) { var grades = $scope.data[i].testing.split(','); for(var j = 0; j < grades.length; j++){ total += parseInt(grades[j]); } } return parseInt(total / $scope.data.length); } }]); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM