Я прочитал это Swap rows with columns (transposition) of a matrix in javascript Однако это не сработало для меня (потому что я все еще ступи).Преобразование столбцов в строки в javascript
Есть номера массивов каждый индивидуально, Колум так:
id [1, 2, 3]
caption [one, two, three]
title [One, Two, Three]
Я хочу, чтобы преобразовать столбцы грести:
arr= [1, one, One]
...
Некоторый код
var res = [];
for(i in this.fields) {
for(j in this.fields[i].value) {
res[j][i] = this.fields[i].value[j];
}
}
это дает мне «TypeError: невозможно преобразовать undefined в объект»
В php этот метод работает нормально, но может кто-нибудь указать мне, как это сделать в js. Заранее спасибо.
UPDATE для Упрощение
var arr = [];
arr[0] = [];
arr[6][0] = 5;
/*
Exception: can't convert undefined to object
@Scratchpad/1:4
*/
Когда мы просканировать общую строку мы итерацию с индексами, как 0-0, 0-1, 0-2 до конца из-ряда, когда начинается снова 1-0 и так далее , Но здесь мне нужно 0-0, 1-0, 2-0 конца колокола и снова 1-0, 1-1, 1-1 ...
UPDATE для "this". Просто добавьте Cople строк:
console.log(this.fields[i].value[j]);
console.log('indexes: i='+i, 'j='+j);
и, как вы могли бы видеть, нет неопределенных значений
4
indexes: i=0 j=0
1
indexes: i=1 j=0
1
indexes: i=2 j=0
one
indexes: i=3 j=0
One
indexes: i=4 j=0
Что такое 'this' в этом контексте? – Mathletics
Показать структуру 'this.fields'. – DontVoteMeDown
Как описано выше, это 2-х массив в полях [i] .value [j]. Просто я хочу, чтобы заставить JS записывать значение в произвольный индекс массива. – kostya