Скрипт Google Apps: возврат массива со столбцами, указанными в другом массиве - PullRequest
0 голосов
/ 18 апреля 2020

Я хотел бы вернуть столбцы из массива, где номера столбцов указаны в другом массиве.

У нас есть Array 2, и мы хотели бы уменьшить его до столбцов, как указано в Array 1.

array2 = [[66,55,44,33,22,11],[77,88,99,55,22,11]];
array1 = [1,3,4];

Выходные данные должны быть:

[[55,33,22],[88,55,22]];

То, что я пробовал

Я чувствую, что у меня почти есть формула, но не совсем. Используя ниже:

  var array1 = [1,3,4];
  var array2 = [[66,55,44,33,22,11],[77,88,99,55,22,11]];
  
  var array3 = array1.map( function (e) { return array2.map(function (f) { return f[e] } )});
  
  console.log(array3)
Я заканчиваю тем, что преобразовываю столбцы array2 в строки, чтобы вывод был похож на [[55.0, 88.0], [33.0, 55.0], [22.0, 22.0]]

Что я делаю не так?

1 Ответ

3 голосов
/ 18 апреля 2020

Попробуйте использовать следующий код. Я думаю, это то, что вы хотите:

array2.map(arr => array1.map(index => arr[index]));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...