Estoy tratando de obtener una lista de personas en un grupo de Google con Google Apps Script. Hice un código (abajo) pero el resultado es inesperado. Creo que está relacionado con el formato del artículo, pero no estoy seguro. En mi código, probé muchos registros para verificar eso.
¿Por qué "indexOf" no puede detectar correctamente el correo electrónico? Porque -1.00 como respuesta es incorrecta.
Información: getUsers() User[] Recupera los miembros directos del grupo que tienen una cuenta de Google correspondiente conocida.
Creo que es extraño indexOf responder -1.00 cuando pregunto con "" y cuando pregunto con la posición de la matriz responde correctamente.
Necesito verificar en un script si alguien está dentro de estos grupos (dentro del bucle).
function CheckingSomeFromGroup() { var members = GroupsApp.getGroupByEmail("members@company").getUsers(); Logger.log(members); //it shows an array in the log Logger.log(members[0]); //it shows the first element form that array which is "Jorge@company.com" Logger.log(members.indexOf("Jorge@company.com") //i was expecting a number different than -1.00 because jorge exists but in the log appear -1.00 which is wrong Logger.log(members.indexOf(members[0]); //it shows 0 correctly becuase Jorge is in the first place of the array Logger.log(members.length);//it shows number 3 which is ok since i have 3 people in the group }members son una matriz de objetos de usuario , no una cadena. Por lo tanto, no puede encontrarlo simplemente por correo electrónico/cadena. Ve el correo electrónico en el registrador porque podría tener un método toString para generarlo.
Puede hacer un bucle en los members y llamar a User.getEmail() para obtener el correo electrónico y trabajar en consecuencia.
function CheckingSomeFromGroup() { var emails = ['abc@example.com'];//get 1-D array of string emails from your column accordingly var members = GroupsApp.getGroupByEmail("members@company").getUsers(); for (var i = 0; i < members.length; i++) { var memberEmail = members[i].getEmail(); if (emails.indexOf(memberEmail) !== -1) { //exists } } }