Saltar al contenido principal

Funciones

Las funciones son bloques de código reutilizable. Así es como diferentes lenguajes definen y llaman funciones.

Declaración Básica de Funciones​

// Function declaration
function greet(name) {
return "Hello, " + name;
}

// Arrow function
const greet = (name) => {
return "Hello, " + name;
};

// Arrow function (shorthand)
const greet = name => "Hello, " + name;

// Function call
greet("John");

Características Avanzadas de Funciones​

// Default parameters
function greet(name = "World") {
return "Hello, " + name;
}

// Rest parameters
function sum(...numbers) {
return numbers.reduce((a, b) => a + b, 0);
}

// Arrow function with this binding
const obj = {
name: "John",
greet: function() {
setTimeout(() => {
console.log(this.name);
}, 100);
}
};

Puntos Clave​

  • Estilos de declaración -- function (JavaScript, PHP), def (Python, Ruby), fn (Rust, Zig), func (Go, Swift). Las funciones flecha y lambdas son comunes en lenguajes modernos.
  • Paso de parámetros -- Los valores por defecto están soportados en la mayoría; variádicos mediante *args/**kwargs (Python), ... (PHP, Go, Swift, C), params (C#). Zig usa ! para retornos con posibilidad de error.
  • Valores de retorno -- Go permite retornos múltiples; Rust usa Result/Option; Zig usa uniones de error; Python/Ruby permiten retornos implícitos de la última expresión.