# 👀Funciones en Javascript 🐱‍👤

Las funciones son uno de los fragmentos de código mas usados en Javascript. Una *función* es un conjunto reutilizable de declaraciones para realizar una tarea especifica.

A las funciones se le pueden pasar uno o más valores por parámetros y utilizar estos para devolver un valor al finalizar la ejecución de la misma. Para utilizar una función,debemos primero definirla, para poder definir una función utilizamos la palabra reservada `function` todas las funciones tienen un aspecto parecido a este.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1648468998298/bmlj8Iw2S.png)

Tienen un **nombre**, aunque también pueden ser **anónimas** y también pueden **recibir datos por parámetros**. Por ejemplo, definiremos una función para realizar una operación de suma entre 2 valores que serán recibidos por parámetro.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1648468999802/Snyyg2tZf.png)

### **Parámetros**

Las entradas a las funciones se conocen como *parámetros,* cuando una función se declara o se define podemos brindarle valores por parámetros estos valores serán como variables dentro del cuerpo de la función.

Cuando se llama a esta función, estos parámetros tendrán el valor de lo que se *pase* como argumentos. Aunque también podemos definir funciones sin ningún tipo de parámetro.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1648469001409/v4t0czDlF.png)

### 🤔😢 Return? Que es eso?

Las funciones **devuelven un resultado**, este resultado es **retornado** o **devuelto** por una palabra reservada llamada `return` . Esta palabra finaliza la ejecución de la función y retorna un valor, un dato a tener en cuenta es que si olvidamos la palabra `return` la función nos arrojara un `undefined` por defecto.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1648469003583/ZGpnh834j.png)

### Funciones ANONIMAS🐱‍🚀🐱‍👤

Javascript nos permite realizar funciones anónimas, es decir sin mombre, para realizar esto simplemente tenemos que asignar la función a una variable o constante, por ejemplo.

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1648469005077/bJ2iqaLUJ.png)

En la edición de **ES6** de Javascript, nos encontramos con algo muy particular, las **Arrow Functions** o **Funciones de flecha**, estas funciones son limpias y concisas. Para declarar una **Arrow Function** no necesitamos de la palabra `function` si no que utilizamos una flecha `=>` para separar los parámetros del cuerpo.

Otra característica a tener en cuenta es que, si solo tenemos un solo parámetro no necesitamos utilizar `()` al rededor de las listas de parámetros.

Y si solo tiene una expresión nos podemos olvidar de la palabra `return` y todo va a funcionar bien!

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1648469007135/eIo9c0hmq.png)

### Si el articulo te gusto o te pareció interesante por favor ayúdame con 👏 🤓 Puedes seguirme en [Twitter](https://twitter.com/suarez__imanol) o encontrarme en [GitHub](https://github.com/FranciscoImanolSuarez) visitando mi sitio web.

[**Francisco Imanol Suarez on about.me**  
*I am a web developer, student, and photographer in Trelew, Argentina. Read my articles.*about.me](https://about.me/franciscoimanol "https://about.me/franciscoimanol")[](https://about.me/franciscoimanol)
