Объединить два массива по идентификатору в AppsScript - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть два массива в проекте App Script, один с адресом электронной почты пользователя и его последней датой входа в систему, а другой - с адресом электронной почты и типом лицензии. Я хотел бы объединить эти два массива в массив, где у каждого элемента есть адрес электронной почты, последний логин и лицензия.

Не гарантируется, что массивы будут в том же порядке.

Пример:

Array 1: [[google.user@domain.com, Google-Apps, 1010020020],[google.user2@domain.com, Google-Apps, 1010020020]
Array 2: [[google.user2@domain.com, 12/31/1969],[google.user@domain.com, 12/31/1969]]

становится

Array 3: [[google.user@domain.com, 12/31/1969, Google-Apps, 1010020020],[google.user2@domain.com, 12/31/1969, Google-Apps, 1010020020]]

Я попробовал несколько методов, описанных в в этом посте и в этом посте , но они кажутся ES6 и выдают ошибки, когда я их запускаю.

1 Ответ

0 голосов
/ 06 ноября 2018

В es5 ваш код должен выглядеть следующим образом:

var a1 = [['google.user@domain.com', 'Google-Apps', '1010020020'],['google.user2@domain.com', 'Google-Apps', '1010020020']]
var a2 =[['google.user@domain.com', '12/31/1969'],['google.user2@domain.com', '12/31/1969
var a3 = new Array()
for(var i=0;i<a1.length;i++){ 
    a3[i]=new Array(); 
    a3[i][0]=a1[i][0]; 
    a3[i][2]=a1[i][1]; 
    a3[i][3]=a1[i][2]; 
}
for(var i=0;i<a2.length;i++){ 
    for(var j=0;i<a3.length;j++){ 
        if(a3[j][0] == a2[i][0]){ 
            a3[j][1] = a2[i][1]; 
            break; 
        } 
    } 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...