Volver a la página principal
viernes 28 febrero 2025
1

Cómo hacer map de un array con una función anónima en Ruby

En Ruby, el método map permite transformar los elementos de un array aplicando una función. Para usar map con una función anónima, se pueden emplear los lambdas o los procs.

Uso de map con una función anónima

1. Usando lambda

Los lambda son funciones anónimas que pueden ser almacenadas en variables y ejecutadas con .call.

numeros = [1, 2, 3, 4]

doblar = ->(x) { x * 2 }

resultado = numeros.map(&doblar)
puts resultado.inspect

Salida:

[2, 4, 6, 8]

Aquí, ->(x) { x * 2 } es un lambda que duplica cada número.

2. Usando Proc.new

Otra forma de definir funciones anónimas es con Proc.new.

numeros = [1, 2, 3, 4]

doblar = Proc.new { |x| x * 2 }

resultado = numeros.map(&doblar)
puts resultado.inspect

Salida:

[2, 4, 6, 8]

Proc.new es similar a lambda, pero maneja los argumentos de forma más flexible.

3. Usando una función anónima directamente en map

Si no se necesita reutilizar la función, se puede definir directamente dentro de map.

numeros = [1, 2, 3, 4]

resultado = numeros.map { |x| x * 2 }
puts resultado.inspect

Salida:

[2, 4, 6, 8]

Esta es la forma más común y concisa de usar map en Ruby.

Etiquetas:
ruby
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer