El filtro de array() es un método incorporado, este método crea una nueva array con elementos que siguen o pasan los criterios y condiciones dados. A continuación se han implementado algunos ejemplos para una mejor comprensión del concepto de sintaxis:
var newArray = arr.filter(callback(element[, index[, array]]) [, thisArg])
Parámetro: este método acepta 2 parámetros que se mencionaron anteriormente y se describen a continuación:
- Devolución de llamada: la función es un predicado, para probar cada elemento de la array. Devuelve true para mantener el elemento, false en caso contrario. Acepta tres argumentos:
- elemento: el elemento actual que se procesa en la array.
- índice (opcional): el índice del elemento actual que se procesa en la array.
- array (opcional): se invocó el filtro de array.
- thisArg (opcional): valor para usar como este al ejecutar la devolución de llamada.
Ejemplo 1: la función de filtro filtra todos los valores numéricos en la array mayores que 5
javascript
var numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; var result = numbers.filter(number => number > 5); console.log(result);
Producción :
[ 6, 7, 8, 9, 10 ]
Complejidad temporal: O(n)
Espacio Auxiliar: O(1)
Ejemplo 2: la función de filtro filtra todas las palabras de la array que tienen una longitud superior a 5
javascript
var words = ["hi", "hello", "hey", "apple", "watermelon", "lemon", "javascript"]; var result = words.filter(word => word.length > 5); console.log(result);
Producción :
[ 'watermelon', 'javascript' ]
Complejidad temporal: O(n)
Espacio Auxiliar: O(1)
Ejemplo 3: la función de filtro filtra todas las identificaciones no válidas de los usuarios de la array.
javascript
var jsonarr = [ { id: 1, name: "joe" }, { id: -19, name: "john" }, { id: 20, name: "james" }, { id: 25, name: "jack" }, { id: -10, name: "joseph" }, { id: "not a number", name: "jimmy" }, { id: null, name: "jeff" }, ] var result = jsonarr.filter(user => user.id > 0); console.log(result);
Producción:
[{"id":1,"name":"joe"},{"id":20,"name":"james"}, {"id":25,"name":"jack"}]
Complejidad temporal: O(n)
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por IshjotSingh97 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA