jueves, 16 de diciembre de 2021

Filtrar arrays dentro del código

 Bastantes veces necesito conseguir todos los valores de una columna. Por ejemplo, cuando quiero actualizar las opciones de una pregunta en un formulario con los valores que aparezcan en una hoja de cálculo. 

Este tema está ya tratado en este artículo

Lo vuelvo a traer a colación para presentar  como filtrar un array dentro del código con una sola línea

Imaginaros que la lista de valores puede cambiar de tamaño y, por lo tanto, es lógico, aparecen líneas vacías, unas veces más otras menos, debajo del último valor, tal que así:

Si no quitamos las líneas vacías, el código no va a funcionar, porque le estamos pidiendo que cree opciones con el mismo nombre (en este caso vacío)

Para quitarlas, se pueden utilizar diferentes estrategias.

Una de ellas es utilizar el método filter que tienen los arrays

Quedaría así:

var lista = ss.getRangeByName('lista_valores').getValues()

var lista_filtrada = lista.filter( function (elemento){return elemento !=""})

Simplemente con la línea superior tenemos la lista filtrada sin líneas vacías.

Lo más difícil de esta línea de código es controlar los paréntesis y las llaves :)

Crear PDF horizontal

El código que vamos a mostrar aquí no ha sido creado por nosotros, sino que lo hemos encontrado en Internet. Objetivo: Publicar una pesta...