У меня есть созданный 4-мерный массив в JavaScript. Один столбец содержит значения String, а остальные три столбца содержат значения float. Я заполнил первые 3 столбца из ответа JSON, а четвертый столбец содержит значения значений col2 и col3. Мне нужно отсортировать весь массив на основе значений в col4. Следующий код показывает, как я создал массив. Может кто-нибудь, пожалуйста, скажите мне, как отсортировать этот массив на основе col4?Как отсортировать многомерный массив на основе одного столбца в JavaScript
var labels = responseJSON.labels;
var knowledge = responseJSON.knowledge;
var interest = responseJSON.interest;
var label_know_int_array = new Array(3);
//array item 0 contains all the labels
label_know_int_array[0] = new Array(200);
//array item 1 contains knowledge values
label_know_int_array[1] = new Array(200);
//array item 2 contains all the interest values
label_know_int_array[2] = new Array(200);
//array item 3 contains the magnitude of knowledge and interest
label_know_int_array[3] = new Array(200);
for(var i=0;i<labels.length;i++)
{
label_know_int_array[0][i] = labels[i];
var knowVal = knowledge[i];
var intVal = interest[i];
label_know_int_array[1][i] = knowVal;
label_know_int_array[2][i] = intVal ;
var squareSum = (knowVal*knowVal) + (intVal*intVal);
var distance = Math.sqrt(squareSum);
label_know_int_array[3][i] = distance ;
}
Это 2-мерная al array, и вам нужно изменить порядок своих размеров. – kirilloid
@kirilloid. Разве это не 4-мерный массив? Я плохо понимаю ваш комментарий. Что вы имеете в виду, я должен переупорядочить размеры? – Paba
Это 2D-массив: 'a [] []'. 4D выглядит так: 'a [] [] [] []'. Вы должны переключить 'label_know_int_array [3]' на 'label_know_int_array [0]' для сортировки по 'distance'. – Teemu