Declaración vs. definición de funciones


Function Declaration

Define una función con nombre sin la necesidad de asignar su valor a una variable.

No pueden ser anidadas en bloques que no sean funciones.

Deben empezar con function

function bar(){
	return 3;
}
		

Function Definition

Define a una función como parte de una expresión mayor (típicamente asignación de una variable)

Pueden tener nombre o ser anónimas.

No pueden empezar con function

var a = function() {
	return 3;
}
		
Código