У меня есть двумерный массив, подобный этому:
biDimArr = new Array(6);
for(var i=0; i<6; i++){
biDimArr[i] = new Array(3);
biDimArr[i] = [i,0,0];
};
Выход: biDimArr = [[0, 0, 0], [1, 0, 0], [2, 0, 0], [3, 0, 0],[4, 0, 0],[5, 0, 0]]
Если я перебираю объект области видимости следующим образом:
var quantityArr=[];
angular.forEach($scope.sales, function (item){
quantityArr.push(item.quantity);
});
Я получаю этот массив: quantityArr = [1, 2, 5, 5, 5, 3]
Как вставить значения из величиныArr в biDimArr во второе положение внутренних массивов? Значение "1" в первом массиве, val "2" во втором, "5" в третьем и т.д.
Мне нужен этот массив, чтобы заполнить линейную диаграмму Google.
Я знаю, что это должен быть простой ответ, но я не получаю правильный результат.
Спасибо. Вы будете очень благодарны.
Вы можете использовать следующий код:
quantityArr.forEach(function(quantity, index) {
biDimArr[index][1] = quantity;
})
Обратите внимание, что в нем отсутствует обработка ошибок, поэтому количествоArr и biDimArr должны иметь точно такое же количество элементов.
Изменить: Чтобы сделать это более эффективно, вы также можете:
$scope.sales.forEach(function(item, index) {
// If you need the quantityArr populated:
quantityArr.push(item.quantity);
// Add the quantity to biDimArr:
diDimArr[index][1] = item.quantity;
})
quantityArr.forEach(function(quantity, index) { biDimArr[index][1] = quantity })
Предполагается, что biDimArr имеет точно такое же количество элементов, что и QuantityArr.