martes, 3 de noviembre de 2020

Diferencia de los método array find() vs filter()


Vemos los resultados de utilizar los métodos Array find() vs filter(), si bien ambos métodos nos permiten buscar elementos deacuerdo a una condición. El resultado de la ejecución arroja diferentes resultados.

Los pasos a seguir son:

1) Crear una planilla de google SpreadSheet, con los siguientes datos, al que llamaremos  PROVEEDORES, y a la primera hoja llamaremos hojaProveedores

El titulo será la fila 1 con los siguientes datos: 
  •  Col A1  = id
  •  Col B1  = Proveedor
  •  Col C1  = Teléfono
  •  Col D1  = Servicio
  •  Col E1  = Dirección


2) Abrir el  Editor de secuencia de comandos de una planilla SpreadSheet de google. Esta es la secuencia de comando que obtuve.

function BuscarEnColD() {

   var namesheet = "hojaProveedores";
   var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(namesheet);
   var rango = ss.getRange(2,1,ss.getLastRow(),5).getValues(); // [][]
      // console.log( " range ", rango );
   var buscar = "Ferreteria"// EN MAYUSCULA
   
   /*  
       El método find() devuelve el valor del primer elemento del array 
       que cumple la función de busqueda proporcionada. 

       https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Global_Objects/Array/find 
    
    */
      
      var arrfind = rango.findfunction(row){
            return row[3].toUpperCase().trim() == buscar.toUpperCase().trim()
      })
       /* con Arrow function  => */
       // var arrfind = rango.find( row => row[3].toUpperCase().trim() == buscar.toUpperCase().trim());

   console.log (" mostrar resultado de la ejecucion - metodo FIND ")
   console.logarrfind );
   

   /* 
      El método filter() crea un nuevo array con todos los elementos 
      que cumplan la condición implementada por la función dada. 
   */

     var arrfilter = rango.filterarr => arr[3].toUpperCase().trim() == buscar.toUpperCase().trim())
  
   console.log (" mostrar resultado de la ejecucion - metodo FILTER")
   console.logarrfilter);
   } \\ cierra function BuscarEnColD



 

 El método find() devuelve el valor del primer elemento del array que cumpla con la condición
proporcionada. Luego da finalizada la búsqueda.

El método filter() crea un nuevo array con todos los elementos que cumplan la condición. Tres registros cumplen la condición servicio = "ferreteria"



 Gracias por leer mi blog.

No hay comentarios:

Publicar un comentario

python - método split()

  Cómo dividir cadena en subcadenas con  el method split()? En este ejemplo, le asigno a la variable varTP el bloque de información con el q...