Я довольно новый для AngularJS (и для разработки в целом). Я пытаюсь создать простую игру, и у меня есть одна проблема.Колонки столбцов сумм в AngularJS
Пользователь может добавлять слова в список и мой скрипт автоматически ассоциирует 5 случайных чисел (в определенном диапазоне) для каждого элемента со следующим:
$scope.randomNum = getNum();
function getNum() {
var arr = [];
min = 1;
max = 5;
for (i=0; i<5; i++) {
arr.push(Math.floor(Math.random() * (max - min + 1)) + minEffort);
}
return arr;
}
Я хотел бы динамически получить суммы столбцы этих массивов. Например, если пользователь добавляет три слова:
- Первая
- Второй
- Третий
и эти слова получают соответственно следующие случайные числа:
- [0, 5,2,4,2]
- [3,5,1,2,1]
- [4,3,4,1,2]
мне нужно нажать на странице в общей сложности каждого столбца: 7, 13, 7, 7, 5. И еще мне нужно использовать эти суммы для продолжения математики.
Как это сделать?
EDIT Я наткнулся на этот фильтре:
app.filter('sumByKey', function() {
return function (data, key) {
if (typeof (data) === 'undefined' || typeof (key) === 'undefined') {
return 0;
}
var sum = 0;
for (var i = data.length - 1; i >= 0; i--) {
sum += parseInt(data[i][key]);
}
return sum;
};
});
Это позволяет мне получить сумму для одного колонн с
{{items|sumByKey: 'randomNum[i]'}}
Могу ли я повторить это автоматически для общего числа столбцы? Можно ли сохранить результаты в другом массиве для дальнейших операций?
Большое спасибо mudasser. Я не уверен, почему я получаю «undefined» для get_colums_sum() ... Я поместил свой код в JSFiddle, но, видимо, он вообще не работает: https://jsfiddle.net/nitecorp/n61cmkfg/2/ Пока на моем локальном сервере работает все, кроме суммы ... –
@MirkoG.вам не удалось определить $ scope.sums в контроллере, который использовался в функции get_col_sum. Здесь plnkr http://plnkr.co/edit/fDgY0syOUacSXtJVBQlr?p=preview, $ scope.sums - массив, который содержит общее количество всех столбцов. –
Спасибо Mudasser. Если я верну сумму, произойдет что-то странное: первая сумма выглядит так, как число первого массива повторяется дважды, а затем сумма изменяется, как только я ввожу что-то в текстовое поле ввода: http: // plnkr. co/edit/ltNwhJupqfWINHc8cl1N? p = preview :( –