Tutorial JS

JS INICIO JS Introducción JS Dónde Salida JS Declaraciones JS Sintaxis JS Comentarios JS Variables JS JS Vamos Constante JS Operadores JS Aritmética JS Tarea JS Tipos de datos JS Funciones JS Objetos JS Eventos JS Cadenas JS Métodos de cadena JS Búsqueda de cadenas JS Plantillas de cadena JS Números JS Métodos numéricos JS Matrices JS Métodos de matriz JS Clasificación de matriz JS Iteración de matriz JS Constante de matriz JS Fechas JS Formatos de fecha JS Métodos de obtención de fecha JS Métodos de configuración de fechas JS Matemáticas JS JS al azar Booleanos JS Comparaciones JS Condiciones JS Interruptor JS Bucle JS para Bucle JS para entrada Bucle JS para de Bucle JS mientras descanso JS Iterables JS Conjuntos JS Mapas JS JS Tipo de Conversión de tipo JS JS bit a bit JS expresión regular Errores JS Alcance JS JS Elevación Modo estricto JS JS esta palabra clave Función de flecha JS Clases JS JSJSON Depuración JS Guía de estilo JS Prácticas recomendadas de JS Errores JS Rendimiento JS Palabras reservadas de JS

Versiones JS

Versiones JS JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Borde Historia de JS

Objetos JS

Definiciones de objetos Propiedades del objeto Métodos de objeto Visualización de objetos Accesores de objetos Constructores de objetos Prototipos de objetos Objeto iterables Conjuntos de objetos Mapas de objetos Referencia de objeto

Funciones JS

Definiciones de funciones Parámetros de función Invocación de función Llamada de función Función Aplicar Cierres de funciones

Clases JS

Introducción a la clase Herencia de clase Clase estática

JS asíncrono

Devoluciones de llamada JS JS asíncrono Promesas JS JS asíncrono/espera

JS HTML DOM

Introducción al DOM Métodos DOM Documento DOM Elementos DOM DOM HTML Formularios DOM DOM CSS Animaciones DOM Eventos DOM Oyente de eventos DOM Navegación DOM Nodos DOM Colecciones DOM Listas de nodos DOM

Lista de materiales del navegador JS

Ventana JS Pantalla JS Ubicación de JS Historia de JS Navegador JS Alerta emergente JS Tiempo JS Galletas JS

API web de JS

Introducción a la API web API de formularios web API de historial web API de almacenamiento web API de trabajo web API de búsqueda web API de geolocalización web

JS AJAX

Introducción a AJAX AJAX XMLHttp Solicitud AJAX Respuesta AJAX Archivo XML AJAX AJAXPHP Ajax ASP Base de datos AJAX Aplicaciones AJAX Ejemplos de AJAX

JSJSON

Introducción JSON Sintaxis JSON JSON frente a XML Tipos de datos JSON Análisis JSON Cadena JSON Objetos JSON Matrices JSON Servidor JSON JSONPHP JSONHTML JSON JSONP

JS frente a jQuery

Selectores jQuery HTML de jQuery CSS de jQuery DOM de jQuery

Gráficos JS

Gráficos JS Lienzo JS JS Trazado Gráfico JS.js Gráfico de Google JS JS D3.js

Ejemplos de JS

Ejemplos de JS JS HTML DOM Entrada HTML JS Objetos JS HTML Eventos JS HTML Navegador JS Editor JS Ejercicios JS Prueba JS Certificado JS

Referencias JS

Objetos JavaScript Objetos HTML DOM


Funciones JavaScript


Una función de JavaScript es un bloque de código diseñado para realizar una tarea en particular.

Una función de JavaScript se ejecuta cuando "algo" la invoca (lo llama).


Ejemplo

function myFunction(p1, p2) {
  return p1 * p2;   // The function returns the product of p1 and p2
}

Sintaxis de funciones de JavaScript

Una función de JavaScript se define con la functionpalabra clave, seguida de un nombre , seguido de paréntesis () .

Los nombres de funciones pueden contener letras, dígitos, subrayados y signos de dólar (las mismas reglas que las variables).

Los paréntesis pueden incluir nombres de parámetros separados por comas:
( parámetro1, parámetro2, ... )

El código a ejecutar, por la función, se coloca entre corchetes: {}

function name(parameter1, parameter2, parameter3) {
  // code to be executed
}

Los parámetros de la función se enumeran entre paréntesis () en la definición de la función.

Los argumentos de la función son los valores recibidos por la función cuando se invoca.

Dentro de la función, los argumentos (los parámetros) se comportan como variables locales.

Una función es muy similar a un procedimiento o una subrutina, en otros lenguajes de programación.


Invocación de función

El código dentro de la función se ejecutará cuando "algo" invoque (llame) a la función:

  • Cuando ocurre un evento (cuando un usuario hace clic en un botón)
  • Cuando se invoca (llama) desde código JavaScript
  • Automáticamente (auto invocado)

Aprenderá mucho más sobre la invocación de funciones más adelante en este tutorial.



Retorno de función

Cuando JavaScript llega a una returndeclaración, la función dejará de ejecutarse.

Si la función se invocó desde una declaración, JavaScript "regresará" para ejecutar el código después de la declaración de invocación.

Las funciones suelen calcular un valor de retorno . El valor de retorno se "devuelve" a la "persona que llama":

Ejemplo

Calcula el producto de dos números y devuelve el resultado:

let x = myFunction(4, 3);   // Function is called, return value will end up in x

function myFunction(a, b) {
  return a * b;             // Function returns the product of a and b
}

El resultado en x será:

12

¿Por qué funciones?

Puede reutilizar el código: defina el código una vez y utilícelo muchas veces.

Puede usar el mismo código muchas veces con diferentes argumentos para producir resultados diferentes.

Ejemplo

Convertir Fahrenheit a Celsius:

function toCelsius(fahrenheit) {
  return (5/9) * (fahrenheit-32);
}
document.getElementById("demo").innerHTML = toCelsius(77);

El operador () invoca la función

Usando el ejemplo anterior, toCelsiusse refiere al objeto de la función y toCelsius()se refiere al resultado de la función.

Acceder a una función sin () devolverá el objeto de la función en lugar del resultado de la función.

Ejemplo

function toCelsius(fahrenheit) {
  return (5/9) * (fahrenheit-32);
}
document.getElementById("demo").innerHTML = toCelsius;

Funciones utilizadas como valores de variables

Las funciones se pueden usar de la misma manera que se usan las variables, en todo tipo de fórmulas, asignaciones y cálculos.

Ejemplo

En lugar de usar una variable para almacenar el valor de retorno de una función:

let x = toCelsius(77);
let text = "The temperature is " + x + " Celsius";

Puede usar la función directamente, como un valor variable:

let text = "The temperature is " + toCelsius(77) + " Celsius";

Aprenderá mucho más sobre las funciones más adelante en este tutorial.


Variables locales

Las variables declaradas dentro de una función de JavaScript se vuelven LOCALES para la función.

Solo se puede acceder a las variables locales desde dentro de la función.

Ejemplo

// code here can NOT use carName

function myFunction() {
  let carName = "Volvo";
  // code here CAN use carName
}

// code here can NOT use carName

Dado que las variables locales solo se reconocen dentro de sus funciones, las variables con el mismo nombre se pueden usar en diferentes funciones.

Las variables locales se crean cuando se inicia una función y se eliminan cuando se completa la función.


Ponte a prueba con ejercicios

Ejercicio:

Ejecuta la función nombrada myFunction.

function myFunction() {
  alert("Hello World!");
}
;